@charset "UTF-8";
@import "https://fonts.googleapis.com/css?family=Courgette|Marck+Script|Pacifico";
@import "https://fonts.googleapis.com/css?family=Coming+Soon";
:root {
  --purple-primary: #47348b;
  --purple-dark: #280759;
  --purple-medium: #5639a4;
  --purple-light: #7c69b0;
  --purple-lighter: #8f81b5;
  --purple-pale: #9b70bf;
  --purple-tint: #e4e0ef;
  --purple-bg: #dbd6e9;
  --green-primary: #74b843;
  --green-dark: #52832f;
  --green-darker: #479117;
  --green-light: #7fcd5d;
  --yellow-primary: #f3bd50;
  --yellow-dark: #cc8b00;
  --yellow-darker: #a06e00;
  --yellow-light: #fecc64;
  --yellow-alt: #ffae00;
  --orange-primary: #f37520;
  --orange-alert: #dc8a48;
  --cyan-primary: #00979a;
  --cyan-light: #2ba6cb;
  --cyan-lighter: #3ac1e1;
  --cyan-dark: #258dad;
  --red-primary: #c60f13;
  --red-dark: #9e0c0f;
  --red-light: #d2232a;
  --red-pale: #a05eb5;
  --white: #ffffff;
  --off-white: #fefefe;
  --off-white-2: #f5f5f5;
  --off-white-3: #f8f8f8;
  --gray-lightest: #f3f3f3;
  --gray-lighter: #ebebeb;
  --gray-light: #e6e6e6;
  --gray-light-2: #dedede;
  --gray-mid-light: #ccc;
  --gray-mid: #999;
  --gray: #8b8c8d;
  --gray-dark: #666;
  --gray-darker: #555;
  --gray-text: #444;
  --gray-text-dark: #333;
  --black: #000000;
  --black-near: #0a0a0a;
  --black-dark: #111;
  --black-off: #222;
  --heading: #28075a;
  --black-10: rgba(0, 0, 0, 0.1);
  --black-25: rgba(10, 10, 10, 0.25);
  --black-50: rgba(0, 0, 0, 0.5);
  --black-60: rgba(0, 0, 0, 0.6);
  --black-75: rgba(34, 34, 34, 0.75);
  --black-80: rgba(0, 0, 0, 0.8);
  --white-25: rgba(254, 254, 254, 0.25);
  --font-primary: "Hanken Grotesk", sans-serif;
  --geist: "Geist", sans-serif;
  --slab: "Hepta Slab", serif;
  --font-system: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  --font-mono: Consolas, "Liberation Mono", Courier, monospace;
  --font-montserrat: montserrat, sans-serif;
  --font-redhat: "Red Hat Display", sans-serif;
  --font-opensans: "Open Sans", sans-serif;
  --font-patua: "Patua One", serif;
  --font-istok: "Istok Web", sans-serif;
  --body: 400 1rem / 1.5 var(--geist);
  --h1: 700 clamp(2.25rem, 1.4063rem + 2.25vw, 3.375rem) / 1.2 var(--font-primary);
  --h2: 700 clamp(1.5rem, 0.9375rem + 1.5vw, 2.25rem) / 1.2 var(--font-primary);
  --h2half: 700 clamp(1rem, 0.625rem + 1vw, 1.5rem) / 1.2 var(--font-primary);
  --h3: 700 clamp(1.25rem, 1.0625rem + 0.5vw, 1.5rem) / 1.2 var(--font-primary);
  --h4: 700 clamp(1rem, 0.9063rem + 0.25vw, 1.125rem) / 1.3 var(--font-primary);
  --h5: 700 clamp(0.875rem, 0.7813rem + 0.25vw, 1rem) / 1.3 var(--font-primary);
  --h6: 700 0.875rem / 1.4 var(--font-primary);
  --display: 700 clamp(3.375rem, 2.9063rem + 1.25vw, 4rem) / 1.1 var(--font-primary);
  --small: 400 0.75rem / 1.6 var(--font-primary);
  --large: 400 1.375rem / 1.6 var(--font-primary);
  --caption: 400 0.875rem / 1.7 var(--slab);
  --meta: 500 0.75rem / 1.2 var(--slab);
  --eyebrow: 400 0.875rem / 1.5 var(--geist);
  --quote: 600 clamp(1.5rem, 5vw, 1.875rem) / 1.5 var(--geist);
  --stats: 600 clamp(1.75rem, 1.1875rem + 1.5vw, 2.5rem) var(--slab);
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.875rem;
  --text-4xl: 2.5rem;
  --text-5xl: 3rem;
  --space-0: 0;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --max-width: 1200px;
  --header-height: 44px;
  --utility-header: 2.5rem;
  --header-small: 5.5rem;
  --header-large: 5.625rem;
  --sticky-cta-height: 5rem;
  --gutter: clamp(1.5rem, 6vw, 3rem);
  --gap: clamp(1rem, 4vw, 2rem);
  --space: clamp(3rem, 12vw, 6rem);
  --wrap-lg: max(var(--gutter), (100% - 100rem) / 2);
  --wrap: max(var(--gutter), (100% - 80rem) / 2);
  --wrap-sm: max(var(--gutter), (100% - 48rem) / 2);
  --border-width: 1px;
  --border-width-thick: 2px;
  --border-width-thicker: 4px;
  --border-radius-sm: 3px;
  --border-radius: 6px;
  --border-radius-lg: 15px;
  --border-radius-full: 50%;
  --border-radius-pill: 31.25rem;
  --radius: 0.25rem;
  --radius-s: 0.375rem;
  --radius-m: 0.75rem;
  --radius-l: 2.5rem;
  --shadow-sm: 0 0 5px rgba(202, 202, 202, 1);
  --shadow: 0 0 10px rgba(10, 10, 10, 0.5);
  --shadow-lg: 0 0 6px 1px rgba(43, 166, 203, 0.5);
  --shadow-inset: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  --text-shadow-outline:
    #000 1px 0 0, #000 1px 1px 0, #000 1px -1px 0, #000 -1px 1px 0, #000 -1px 0 0, #000 -1px -1px 0, #000 0 1px 0,
    #000 0 -1px 0;
  --transition-fast: 0.2s ease-out;
  --transition-base: 0.4s ease;
  --transition-movement: 0.2s linear;
  --transition-fade: 0.3s ease;
  --transition-bounce: 0.5s cubic-bezier(0.5, 0.05, 0.2, 1.5);
  --transition-slow: 0.6s;
  --transition-bg: background-color 0.25s;
  --transition-color: color 0.25s;
  --transition-shadow: box-shadow 0.25s;
  --transition: var(--transition-base);
  --z-base: 1;
  --z-header: 20;
  --z-dropdown: 10;
  --z-modal: 100;
  --z-toast: 1000;
  --leading-tight: 1.2;
  --leading-normal: 1.5;
  --leading-loose: 1.7;
  --font-normal: 400;
  --font-semibold: 600;
  --font-bold: 700;
  --gradient-purple-horizontal: linear-gradient(270deg, var(--purple-medium) 0%, var(--purple-primary) 100%);
  --gradient-light-purple: linear-gradient(180deg, #fff 0%, #f3edf7 100%);
}
.theme-purple-horizontal {
  --background: var(--purple-primary);
  --color: var(--white);
  --heading: var(--white);
  --link: var(--white);
  --outline-color: var(--white);
  background: var(--background);
  color: var(--color);
}
.theme-light {
  --background: linear-gradient(180deg, #fff 0%, #f3edf7 100%);
  --color: var(--black);
  --heading: var(--purple-primary);
  --link: var(--purple-primary);
  --outline-color: var(--purple-primary);
  background: var(--background);
  color: var(--color);
} /*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
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,
menu,
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-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: 700;
}
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;
}
figure {
  margin: 1em 40px;
}
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: not-allowed;
}
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;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: 700;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em";
}
html {
  font-size: 100%;
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
body {
  padding: 0;
  margin: 0;
  font-family:
    Helvetica Neue,
    Helvetica,
    Roboto,
    Arial,
    sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #0a0a0a;
  background: #fefefe;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: inline-block;
  vertical-align: middle;
}
textarea {
  height: auto;
  min-height: 50px;
  border-radius: 3px;
}
select {
  width: 100%;
  border-radius: 3px;
}
#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 3px;
  line-height: 1;
}
[data-whatinput="mouse"] button {
  outline: 0;
}
.is-visible {
  display: block !important;
}
.is-hidden {
  display: none !important;
}
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}
p {
  font-size: inherit;
  line-height: 1.6;
  margin-bottom: 1rem;
  text-rendering: optimizeLegibility;
}
em,
i {
  font-style: italic;
  line-height: inherit;
}
strong,
b {
  font-weight: 700;
  line-height: inherit;
}
small {
  font-size: 80%;
  line-height: inherit;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  text-rendering: optimizeLegibility;
  margin-top: 0;
  margin-bottom: 0.5rem;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  color: #cacaca;
  line-height: 0;
}
h1 {
  font: var(--h1);
}
h2 {
  font: var(--h2);
}
h3 {
  font: var(--h3);
}
h4 {
  font: var(--h4);
}
h5 {
  font: var(--h5);
}
h6 {
  font: var(--h6);
}
a {
  color: #2ba6cb;
  text-decoration: none;
  line-height: inherit;
  cursor: pointer;
}
a:hover,
a:focus {
  color: #258faf;
}
a img {
  border: 0;
}
hr {
  max-width: 62.5rem;
  height: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0;
  margin: 1.25rem auto;
  clear: both;
}
ul,
ol,
dl {
  line-height: 1.6;
  margin-bottom: 1rem;
  list-style-position: outside;
}
li {
  font-size: inherit;
}
ul {
  list-style-type: disc;
  margin-left: 1.25rem;
}
ol {
  margin-left: 1.25rem;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}
dl {
  margin-bottom: 1rem;
}
dl dt {
  margin-bottom: 0.3rem;
  font-weight: 700;
}
blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca;
}
blockquote,
blockquote p {
  line-height: 1.6;
  color: #575757;
}
cite {
  display: block;
  font-size: 0.8125rem;
  color: #575757;
}
cite:before {
  content: "— ";
}
abbr {
  color: #0a0a0a;
  cursor: help;
  border-bottom: 1px dotted #0a0a0a;
}
code {
  font-family:
    Consolas,
    Liberation Mono,
    Courier,
    monospace;
  font-weight: 400;
  color: #0a0a0a;
  background-color: #e6e6e6;
  border: 1px solid #cacaca;
  padding: 0.125rem 0.3125rem 0.0625rem;
}
kbd {
  padding: 0.125rem 0.25rem 0;
  margin: 0;
  background-color: #e6e6e6;
  color: #0a0a0a;
  font-family:
    Consolas,
    Liberation Mono,
    Courier,
    monospace;
  border-radius: 3px;
}
.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: #8a8a8a;
}
.lead {
  font-size: 125%;
  line-height: 1.6;
}
.stat {
  font-size: 2.5rem;
  line-height: 1;
}
p + .stat {
  margin-top: -1rem;
}
.no-bullet {
  margin-left: 0;
  list-style: none;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
@media screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}
@media screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print,
  th.show-for-print {
    display: table-cell !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
[type="text"],
[type="password"],
[type="date"],
[type="datetime"],
[type="datetime-local"],
[type="month"],
[type="week"],
[type="email"],
[type="number"],
[type="search"],
[type="tel"],
[type="time"],
[type="url"],
[type="color"],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 1rem;
  color: #0a0a0a;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px #0a0a0a1a;
  border-radius: 3px;
  transition:
    box-shadow 0.5s,
    border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
}
[type="text"]:focus,
[type="password"]:focus,
[type="date"]:focus,
[type="datetime"]:focus,
[type="datetime-local"]:focus,
[type="month"]:focus,
[type="week"]:focus,
[type="email"]:focus,
[type="number"]:focus,
[type="search"]:focus,
[type="tel"]:focus,
[type="time"]:focus,
[type="url"]:focus,
[type="color"]:focus,
textarea:focus {
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  outline: none;
  box-shadow: 0 0 5px #cacaca;
  transition:
    box-shadow 0.5s,
    border-color 0.25s ease-in-out;
}
textarea {
  max-width: 100%;
}
textarea[rows] {
  height: auto;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #cacaca;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #cacaca;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #cacaca;
}
input::placeholder,
textarea::placeholder {
  color: #cacaca;
}
input:disabled,
input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
[type="submit"],
[type="button"] {
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
}
input[type="search"] {
  box-sizing: border-box;
}
[type="file"],
[type="checkbox"],
[type="radio"] {
  margin: 0 0 1rem;
}
[type="checkbox"] + label,
[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline;
}
[type="checkbox"] + label[for],
[type="radio"] + label[for] {
  cursor: pointer;
}
label > [type="checkbox"],
label > [type="radio"] {
  margin-right: 0.5rem;
}
[type="file"] {
  width: 100%;
}
label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  color: #0a0a0a;
}
label.middle {
  margin: 0 0 1rem;
  padding: 0.5625rem 0;
}
.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a;
}
.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem;
}
.input-group > :first-child {
  border-radius: 3px 0 0 3px;
}
.input-group > :last-child > * {
  border-radius: 0 3px 3px 0;
}
.input-group-label,
.input-group-field,
.input-group-button {
  margin: 0;
  white-space: nowrap;
  display: table-cell;
  vertical-align: middle;
}
.input-group-label {
  text-align: center;
  padding: 0 1rem;
  background: #e6e6e6;
  color: #0a0a0a;
  border: 1px solid #cacaca;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}
.input-group-field {
  border-radius: 0;
  height: 2.5rem;
}
.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  height: 100%;
  width: 1%;
}
.input-group-button a,
.input-group-button input,
.input-group-button button {
  margin: 0;
}
.input-group .input-group-button {
  display: table-cell;
}
fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}
legend {
  margin-bottom: 0.5rem;
  max-width: 100%;
}
.fieldset {
  border: 1px solid #cacaca;
  padding: 1.25rem;
  margin: 1.125rem 0;
}
.fieldset legend {
  background: #fefefe;
  padding: 0 0.1875rem;
  margin: 0;
  margin-left: -0.1875rem;
}
select {
  height: 2.4375rem;
  padding: 0.5rem 1.5rem 0.5rem 0.5rem;
  border: 1px solid #cacaca;
  margin: 0 0 1rem;
  font-size: 1rem;
  font-family: inherit;
  line-height: normal;
  color: #0a0a0a;
  background-color: #fefefe;
  border-radius: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-size: 9px 6px;
  background-position: right -1rem center;
  background-origin: content-box;
  background-repeat: no-repeat;
}
@media screen and (min-width: 0�) {
  select {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==);
  }
}
select:disabled {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}
.is-invalid-input:not(:focus) {
  background-color: #c60f131a;
  border-color: #c60f13;
}
.is-invalid-label {
  color: #c60f13;
}
.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #c60f13;
}
.form-error.is-visible {
  display: block;
}
.float-left {
  float: left !important;
}
.float-right {
  float: right !important;
}
.float-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
.hide {
  display: none !important;
}
.invisible {
  visibility: hidden;
}
@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important;
  }
}
@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important;
  }
}
@media screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important;
  }
}
@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important;
  }
}
@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}
@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}
@media screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}
@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important;
  }
}
@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important;
  }
}
@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}
.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
.show-on-focus:active,
.show-on-focus:focus {
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto;
}
.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}
@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}
@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}
.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}
@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}
@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out,
    box-shadow 0.3s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0.125rem;
  gap: 0.5rem;
  padding: 0.85em 1em;
  margin: 0 0 1rem;
  font-size: 0.875rem;
  font-weight: 500;
  background-color: var(--purple-dark);
  color: var(--yellow-primary);
  box-shadow: 0 0 0 0 var(--purple-dark);
}
[data-whatinput="mouse"] .button {
  outline: 0;
}
.button:hover,
.button:focus {
  background-color: var(--yellow-primary);
  color: var(--purple-dark);
  box-shadow: 0 0 0 1.5px var(--purple-dark);
  border-radius: 0.05rem;
}
.button.button--yellow {
  background-color: var(--yellow-primary);
  color: var(--purple-dark);
  box-shadow: 0 0 0 0 var(--yellow-primary);
}
.button.button--yellow:hover,
.button.button--yellow:focus {
  background-color: var(--purple-dark);
  color: var(--white);
  box-shadow: 0 0 0 1.5px var(--yellow-primary);
  border-radius: 0.05rem;
}
.button.tiny {
  font-size: 0.6rem;
}
.button.small {
  font-size: 0.75rem;
}
.button.large {
  font-size: 1rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.button.arrow:after {
  content: "";
  display: block;
  width: 1rem;
  height: 0.75rem;
  background: currentColor;
  mask: url(arrow_circle_right.svg) center / contain no-repeat;
  transition: transform 0.3s ease-out;
}
.button.arrow:hover:after {
  transform: translate(0.25rem);
}
.button.primary {
  background-color: #2ba6cb;
  color: #fefefe;
}
.button.primary:hover,
.button.primary:focus {
  background-color: #2285a2;
  color: #fefefe;
}
.button.secondary {
  background-color: #e9e9e9;
  color: #0a0a0a;
}
.button.secondary:hover,
.button.secondary:focus {
  background-color: #bababa;
  color: #0a0a0a;
}
.button.alert {
  background-color: #af282e;
  color: #fefefe;
}
.button.alert:hover,
.button.alert:focus {
  background-color: #9e0c0f;
  color: #fefefe;
}
.button.success {
  background-color: #74b843;
  color: #fefefe;
}
.button.success:hover,
.button.success:focus {
  background-color: #4a831c;
  color: #fefefe;
}
.button.warning {
  background-color: #ffae00;
  color: #fefefe;
}
.button.warning:hover,
.button.warning:focus {
  background-color: #cc8b00;
  color: #fefefe;
}
.button.body-font {
  background-color: #222;
  color: #fefefe;
}
.button.body-font:hover,
.button.body-font:focus {
  background-color: #1b1b1b;
  color: #fefefe;
}
.button.header {
  background-color: #222;
  color: #fefefe;
}
.button.header:hover,
.button.header:focus {
  background-color: #1b1b1b;
  color: #fefefe;
}
.button.hollow {
  border: 1px solid #2ba6cb;
  color: #2ba6cb;
}
.button.hollow,
.button.hollow:hover,
.button.hollow:focus {
  background-color: transparent;
}
.button.hollow:hover,
.button.hollow:focus {
  border-color: #165366;
  color: #165366;
}
.button.hollow.primary {
  border: 1px solid #2ba6cb;
  color: #2ba6cb;
}
.button.hollow.primary:hover,
.button.hollow.primary:focus {
  border-color: #165366;
  color: #165366;
}
.button.hollow.secondary {
  border: 1px solid #e9e9e9;
  color: #e9e9e9;
}
.button.hollow.secondary:hover,
.button.hollow.secondary:focus {
  border-color: #757575;
  color: #757575;
}
.button.hollow.alert {
  border: 1px solid #c60f13;
  color: #c60f13;
}
.button.hollow.alert:hover,
.button.hollow.alert:focus {
  border-color: #63080a;
  color: #63080a;
}
.button.hollow.success {
  border: 1px solid #5da423;
  color: #5da423;
}
.button.hollow.success:hover,
.button.hollow.success:focus {
  border-color: #2f5212;
  color: #2f5212;
}
.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.warning:hover,
.button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}
.button.hollow.body-font {
  border: 1px solid #222222;
  color: #222;
}
.button.hollow.body-font:hover,
.button.hollow.body-font:focus {
  border-color: #111;
  color: #111;
}
.button.hollow.header {
  border: 1px solid #222222;
  color: #222;
}
.button.hollow.header:hover,
.button.hollow.header:focus {
  border-color: #111;
  color: #111;
}
.button.disabled,
.button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled:hover,
.button.disabled:focus,
.button[disabled]:hover,
.button[disabled]:focus {
  background-color: #2ba6cb;
  color: #fefefe;
}
.button.dropdown:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  border-color: #fefefe transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: relative;
  top: 0.4em;
  float: right;
  margin-left: 1em;
  display: inline-block;
}
.button.arrow-only:after {
  margin-left: 0;
  float: none;
  top: -0.1em;
}
.close-button {
  position: absolute;
  color: #8a8a8a;
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
  cursor: pointer;
}
[data-whatinput="mouse"] .close-button {
  outline: 0;
}
.close-button:hover,
.close-button:focus {
  color: #0a0a0a;
}
.button-group {
  margin-bottom: 1rem;
  font-size: 0;
}
.button-group:before,
.button-group:after {
  content: " ";
  display: table;
}
.button-group:after {
  clear: both;
}
.button-group .button {
  margin: 0 1px 1px 0;
  font-size: 0.9rem;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded {
  margin-right: -1px;
}
.button-group.expanded:before,
.button-group.expanded:after {
  display: none;
}
.button-group.expanded .button:first-child:nth-last-child(2),
.button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(2):last-child,
.button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(3),
.button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.33333% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(3):last-child,
.button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(4),
.button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(4):last-child,
.button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(5),
.button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(5):last-child,
.button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(6),
.button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.66667% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(6):last-child,
.button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.primary .button {
  background-color: #2ba6cb;
  color: #fefefe;
}
.button-group.primary .button:hover,
.button-group.primary .button:focus {
  background-color: #2285a2;
  color: #fefefe;
}
.button-group.secondary .button {
  background-color: #e9e9e9;
  color: #0a0a0a;
}
.button-group.secondary .button:hover,
.button-group.secondary .button:focus {
  background-color: #bababa;
  color: #0a0a0a;
}
.button-group.alert .button {
  background-color: #c60f13;
  color: #fefefe;
}
.button-group.alert .button:hover,
.button-group.alert .button:focus {
  background-color: #9e0c0f;
  color: #fefefe;
}
.button-group.success .button {
  background-color: #5da423;
  color: #fefefe;
}
.button-group.success .button:hover,
.button-group.success .button:focus {
  background-color: #4a831c;
  color: #fefefe;
}
.button-group.warning .button {
  background-color: #ffae00;
  color: #fefefe;
}
.button-group.warning .button:hover,
.button-group.warning .button:focus {
  background-color: #cc8b00;
  color: #fefefe;
}
.button-group.body-font .button {
  background-color: #222;
  color: #fefefe;
}
.button-group.body-font .button:hover,
.button-group.body-font .button:focus {
  background-color: #1b1b1b;
  color: #fefefe;
}
.button-group.header .button {
  background-color: #222;
  color: #fefefe;
}
.button-group.header .button:hover,
.button-group.header .button:focus {
  background-color: #1b1b1b;
  color: #fefefe;
}
.button-group.stacked .button,
.button-group.stacked-for-small .button,
.button-group.stacked-for-medium .button {
  width: 100%;
}
.button-group.stacked .button:last-child,
.button-group.stacked-for-small .button:last-child,
.button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 40em) {
  .button-group.stacked-for-small .button {
    width: auto;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    width: auto;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 39.9375em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}
.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: none;
  touch-action: none;
}
.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  transition: all 0.2s ease-in-out;
}
.slider-fill.is-dragging {
  transition: all 0s linear;
}
.slider-handle {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  position: absolute;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #2ba6cb;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  border-radius: 3px;
}
[data-whatinput="mouse"] .slider-handle {
  outline: 0;
}
.slider-handle:hover {
  background-color: #258dad;
}
.slider-handle.is-dragging {
  transition: all 0s linear;
}
.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scaleY(-1);
}
.slider.vertical .slider-fill {
  top: 0;
  width: 0.5rem;
  max-height: 100%;
}
.slider.vertical .slider-handle {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%);
}
.switch {
  margin-bottom: 1rem;
  outline: 0;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #fefefe;
  font-weight: 700;
  font-size: 0.875rem;
}
.switch-input {
  opacity: 0;
  position: absolute;
}
.switch-paddle {
  background: #cacaca;
  cursor: pointer;
  display: block;
  position: relative;
  width: 4rem;
  height: 2rem;
  transition: all 0.25s ease-out;
  border-radius: 3px;
  color: inherit;
  font-weight: inherit;
}
input + .switch-paddle {
  margin: 0;
}
.switch-paddle:after {
  background: #fefefe;
  content: "";
  display: block;
  position: absolute;
  height: 1.5rem;
  left: 0.25rem;
  top: 0.25rem;
  width: 1.5rem;
  transition: all 0.25s ease-out;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translateZ(0);
  border-radius: 3px;
}
input:checked ~ .switch-paddle {
  background: #2ba6cb;
}
input:checked ~ .switch-paddle:after {
  left: 2.25rem;
}
[data-whatinput="mouse"] input:focus ~ .switch-paddle {
  outline: 0;
}
.switch-active,
.switch-inactive {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.switch-active {
  left: 8%;
  display: none;
}
input:checked + label > .switch-active {
  display: block;
}
.switch-inactive {
  right: 15%;
}
input:checked + label > .switch-inactive {
  display: none;
}
.switch.tiny .switch-paddle {
  width: 3rem;
  height: 1.5rem;
  font-size: 0.625rem;
}
.switch.tiny .switch-paddle:after {
  width: 1rem;
  height: 1rem;
}
.switch.tiny input:checked ~ .switch-paddle:after {
  left: 1.75rem;
}
.switch.small .switch-paddle {
  width: 3.5rem;
  height: 1.75rem;
  font-size: 0.75rem;
}
.switch.small .switch-paddle:after {
  width: 1.25rem;
  height: 1.25rem;
}
.switch.small input:checked ~ .switch-paddle:after {
  left: 2rem;
}
.switch.large .switch-paddle {
  width: 5rem;
  height: 2.5rem;
  font-size: 1rem;
}
.switch.large .switch-paddle:after {
  width: 2rem;
  height: 2rem;
}
.switch.large input:checked ~ .switch-paddle:after {
  left: 2.75rem;
}
.menu {
  margin: 0;
  list-style-type: none;
}
.menu > li {
  display: table-cell;
  vertical-align: middle;
}
[data-whatinput="mouse"] .menu > li {
  outline: 0;
}
.menu > li > a {
  display: block;
  padding: 0.7rem 1rem;
  line-height: 1;
}
.menu input,
.menu a,
.menu button {
  margin-bottom: 0;
}
.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  vertical-align: middle;
}
.menu > li > a img + span,
.menu > li > a i + span,
.menu > li > a svg + span {
  vertical-align: middle;
}
.menu > li > a img,
.menu > li > a i,
.menu > li > a svg {
  margin-right: 0.25rem;
  display: inline-block;
}
.menu > li {
  display: table-cell;
}
.menu.vertical > li {
  display: block;
}
@media screen and (min-width: 40em) {
  .menu.medium-horizontal > li {
    display: table-cell;
  }
  .menu.medium-vertical > li {
    display: block;
  }
}
@media screen and (min-width: 64em) {
  .menu.large-horizontal > li {
    display: table-cell;
  }
  .menu.large-vertical > li {
    display: block;
  }
}
.menu.simple li {
  line-height: 1;
  display: inline-block;
  margin-right: 1rem;
}
.menu.simple a {
  padding: 0;
}
.menu.align-right:before,
.menu.align-right:after {
  content: " ";
  display: table;
}
.menu.align-right:after {
  clear: both;
}
.menu.align-right > li {
  float: right;
}
.menu.expanded {
  width: 100%;
  display: table;
  table-layout: fixed;
}
.menu.expanded > li:first-child:last-child {
  width: 100%;
}
.menu.icon-top > li > a {
  text-align: center;
}
.menu.icon-top > li > a img,
.menu.icon-top > li > a i,
.menu.icon-top > li > a svg {
  display: block;
  margin: 0 auto 0.25rem;
}
.menu.nested {
  margin-left: 1rem;
}
.menu .active > a {
  color: #fefefe;
  background: #2ba6cb;
}
.menu-text {
  font-weight: 700;
  color: inherit;
  line-height: 1;
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem;
}
.menu-centered {
  text-align: center;
}
.menu-centered > .menu {
  display: inline-block;
}
.no-js [data-responsive-menu] ul {
  display: none;
}
.is-drilldown {
  position: relative;
  overflow: hidden;
}
.is-drilldown li {
  display: block !important;
}
.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  height: 100%;
  width: 100%;
  background: #fefefe;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
}
.is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translate(-100%);
}
.is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translate(100%);
}
.is-drilldown-submenu-parent > a {
  position: relative;
}
.is-drilldown-submenu-parent > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: transparent transparent transparent #2ba6cb;
  border-left-style: solid;
  border-right-width: 0;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
}
.js-drilldown-back > a:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: transparent #2ba6cb transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
}
.is-accordion-submenu-parent > a {
  position: relative;
}
.is-accordion-submenu-parent > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: #2ba6cb transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  right: 1rem;
}
.is-accordion-submenu-parent[aria-expanded="true"] > a:after {
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transform: scaleY(-1);
  -ms-transform: scaleY(-1);
  transform: scaleY(-1);
}
.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 0;
  top: 100%;
}
.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 0;
  top: 100%;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a {
  padding-right: 1.5rem;
  position: relative;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: #2ba6cb transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  right: 5px;
  margin-top: -2px;
}
[data-whatinput="mouse"] .dropdown.menu a {
  outline: 0;
}
.no-js .dropdown.menu ul {
  display: none;
}
.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}
.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 100%;
}
.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
.dropdown.menu.vertical > li > a:after {
  right: 14px;
  margin-top: -3px;
}
.dropdown.menu.vertical > li.opens-left > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent #2ba6cb transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
}
.dropdown.menu.vertical > li.opens-right > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent transparent transparent #2ba6cb;
  border-left-style: solid;
  border-right-width: 0;
}
@media screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #2ba6cb transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a:after {
    right: 14px;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #2ba6cb transparent transparent;
    border-right-style: solid;
    border-left-width: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #2ba6cb;
    border-left-style: solid;
    border-right-width: 0;
  }
}
@media screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #2ba6cb transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a:after {
    right: 14px;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #2ba6cb transparent transparent;
    border-right-style: solid;
    border-left-width: 0;
  }
  .dropdown.menu.large-vertical > li.opens-right > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #2ba6cb;
    border-left-style: solid;
    border-right-width: 0;
  }
}
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  left: auto;
  right: 0;
}
.is-dropdown-menu.vertical {
  width: 100px;
}
.is-dropdown-menu.vertical.align-right {
  float: right;
}
.is-dropdown-submenu-parent {
  position: relative;
}
.is-dropdown-submenu-parent a:after {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -2px;
}
.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto;
}
.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 100%;
}
.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
.is-dropdown-submenu {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  min-width: 200px;
  z-index: 1;
  background: #fefefe;
  border: 1px solid #cacaca;
}
.is-dropdown-submenu .is-dropdown-submenu-parent > a:after {
  right: 14px;
  margin-top: -3px;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent #2ba6cb transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent transparent transparent #2ba6cb;
  border-left-style: solid;
  border-right-width: 0;
}
.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}
.is-dropdown-submenu > li {
  width: 100%;
}
.is-dropdown-submenu.js-dropdown-active {
  display: block;
}
.title-bar {
  background: #0a0a0a;
  color: #fefefe;
  padding: 0.5rem;
}
.title-bar:before,
.title-bar:after {
  content: " ";
  display: table;
}
.title-bar:after {
  clear: both;
}
.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.title-bar-left {
  float: left;
}
.title-bar-right {
  float: right;
  text-align: right;
}
.title-bar-title {
  font-weight: 700;
  vertical-align: middle;
  display: inline-block;
}
.top-bar {
  padding: 0.5rem;
}
.top-bar:before,
.top-bar:after {
  content: " ";
  display: table;
}
.top-bar:after {
  clear: both;
}
.top-bar,
.top-bar ul {
  background-color: #e6e6e6;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  width: 100%;
}
@media screen and (min-width: 40em) {
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: auto;
  }
}
@media screen and (max-width: 63.9375em) {
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    width: 100%;
  }
}
@media screen and (max-width: 74.9375em) {
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    width: 100%;
  }
}
.top-bar-title {
  float: left;
  margin-right: 1rem;
}
.top-bar-left {
  float: left;
}
.top-bar-right {
  float: right;
}
.breadcrumbs {
  list-style: none;
  margin: 0 0 1rem;
}
.breadcrumbs:before,
.breadcrumbs:after {
  content: " ";
  display: table;
}
.breadcrumbs:after {
  clear: both;
}
.breadcrumbs li {
  float: left;
  color: #0a0a0a;
  font-size: 0.6875rem;
  cursor: default;
  text-transform: uppercase;
}
.breadcrumbs li:not(:last-child):after {
  color: #cacaca;
  content: "/";
  margin: 0 0.75rem;
  position: relative;
  top: 1px;
  opacity: 1;
}
.breadcrumbs a {
  color: #2ba6cb;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs .disabled {
  color: #cacaca;
  cursor: not-allowed;
}
.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}
.pagination:before,
.pagination:after {
  content: " ";
  display: table;
}
.pagination:after {
  clear: both;
}
.pagination li {
  font-size: 0.875rem;
  margin-right: 0.0625rem;
  border-radius: 3px;
  display: none;
}
.pagination li:last-child,
.pagination li:first-child {
  display: inline-block;
}
@media screen and (min-width: 40em) {
  .pagination li {
    display: inline-block;
  }
}
.pagination a,
.pagination button {
  color: #0a0a0a;
  display: block;
  padding: 0.1875rem 0.625rem;
  border-radius: 3px;
}
.pagination a:hover,
.pagination button:hover {
  background: #e6e6e6;
}
.pagination .current {
  padding: 0.1875rem 0.625rem;
  background: #2ba6cb;
  color: #fefefe;
  cursor: default;
}
.pagination .disabled {
  padding: 0.1875rem 0.625rem;
  color: #cacaca;
  cursor: not-allowed;
}
.pagination .disabled:hover {
  background: transparent;
}
.pagination .ellipsis:after {
  content: "…";
  padding: 0.1875rem 0.625rem;
  color: #0a0a0a;
}
.pagination-previous a:before,
.pagination-previous.disabled:before {
  content: "«";
  display: inline-block;
  margin-right: 0.5rem;
}
.pagination-next a:after,
.pagination-next.disabled:after {
  content: "»";
  display: inline-block;
  margin-left: 0.5rem;
}
.accordion {
  list-style-type: none;
  background: #fefefe;
  margin-left: 0;
}
.accordion-item:first-child > :first-child {
  border-radius: 3px 3px 0 0;
}
.accordion-item:last-child > :last-child {
  border-radius: 0 0 3px 3px;
}
.accordion {
  display: flex;
  flex-direction: column;
}
.accordion-item {
  display: flex;
  flex-direction: column;
}
.accordion-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.25rem 1rem;
  line-height: 1;
  font-size: 0.75rem;
  color: #2ba6cb;
  position: relative;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  gap: 0.5rem;
}
:last-child:not(.is-active) > .accordion-title {
  border-radius: 0 0 3px 3px;
  border-bottom: 1px solid #e6e6e6;
}
.accordion-title:hover,
.accordion-title:focus {
  background-color: #e6e6e6;
}
.accordion-title:after {
  content: "+";
  flex-shrink: 0;
  font-weight: 600;
}
.is-active > .accordion-title:after {
  content: "–";
}
/* Scoped styles for dual-accordion layout */
.dual-accordions .accordion {
  height: 100%;
}
.dual-accordions .accordion-item {
  flex: 1;
}
.dual-accordions .accordion-title {
  min-height: 5.5rem;
}
.accordion-content {
  padding: 1rem;
  display: none;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #e6e6e6;
}
.dropdown-pane {
  background-color: #fefefe;
  border: 1px solid #cacaca;
  border-radius: 3px;
  display: block;
  font-size: 1rem;
  padding: 1rem;
  position: absolute;
  visibility: hidden;
  width: 300px;
  z-index: 10;
}
.dropdown-pane.is-open {
  visibility: visible;
}
.dropdown-pane.tiny {
  width: 100px;
}
.dropdown-pane.small {
  width: 200px;
}
.dropdown-pane.large {
  width: 400px;
}
html,
body {
  height: 100%;
}
.off-canvas-wrapper {
  width: 100%;
  overflow-x: hidden;
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: auto;
}
.off-canvas-wrapper-inner {
  position: relative;
  width: 100%;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
}
.off-canvas-wrapper-inner:before,
.off-canvas-wrapper-inner:after {
  content: " ";
  display: table;
}
.off-canvas-wrapper-inner:after {
  clear: both;
}
.off-canvas-content {
  min-height: 100%;
  background: #fefefe;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  padding-bottom: 0.1px;
  box-shadow: 0 0 10px #0a0a0a80;
}
.js-off-canvas-exit {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fefefe40;
  cursor: pointer;
  transition: background 0.5s ease;
}
.off-canvas {
  position: absolute;
  background: #e6e6e6;
  z-index: -1;
  max-height: 100%;
  overflow-y: auto;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translate(0);
}
[data-whatinput="mouse"] .off-canvas {
  outline: 0;
}
.off-canvas.position-left {
  left: -250px;
  top: 0;
  width: 250px;
}
.is-open-left {
  -webkit-transform: translateX(250px);
  -ms-transform: translateX(250px);
  transform: translate(250px);
}
.off-canvas.position-right {
  right: -250px;
  top: 0;
  width: 250px;
}
.is-open-right {
  -webkit-transform: translateX(-250px);
  -ms-transform: translateX(-250px);
  transform: translate(-250px);
}
@media screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    left: 0;
    z-index: auto;
    position: fixed;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    right: 0;
    z-index: auto;
    position: fixed;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
}
@media screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    left: 0;
    z-index: auto;
    position: fixed;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    right: 0;
    z-index: auto;
    position: fixed;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
}
.tabs {
  margin: 0;
  list-style-type: none;
  background: #fefefe;
  border: 1px solid #e6e6e6;
}
.tabs:before,
.tabs:after {
  content: " ";
  display: table;
}
.tabs:after {
  clear: both;
}
.tabs.vertical > li {
  width: auto;
  float: none;
  display: block;
}
.tabs.simple > li > a {
  padding: 0;
}
.tabs.simple > li > a:hover {
  background: transparent;
}
.tabs.primary {
  background: #2ba6cb;
}
.tabs.primary > li > a {
  color: #fefefe;
}
.tabs.primary > li > a:hover,
.tabs.primary > li > a:focus {
  background: #299ec1;
}
.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  line-height: 1;
  font-size: 0.75rem;
}
.tabs-title > a:hover {
  background: #fefefe;
}
.tabs-title > a:focus,
.tabs-title > a[aria-selected="true"] {
  background: #e6e6e6;
}
.tabs-content {
  background: #fefefe;
  transition: all 0.5s ease;
  border: 1px solid #e6e6e6;
  border-top: 0;
}
.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0;
}
.tabs-panel {
  display: none;
  padding-left: 1rem;
}
.tabs-panel.is-active {
  display: block;
}
.callout section {
  margin: 0 0 1rem;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 3px;
  position: relative;
  color: #0a0a0a;
  background-color: #fff;
}
.callout > :first-child {
  margin-top: 0;
}
.callout > :last-child {
  margin-bottom: 0;
}
.callout.primary {
  background-color: #def2f8;
}
.callout.secondary {
  background-color: #fcfcfc;
}
.callout.alert {
  background-color: #fcd6d6;
}
.callout.success {
  background-color: #e6f7d9;
}
.callout.warning {
  background-color: #fff3d9;
}
.callout.body-font,
.callout.header {
  background-color: #dedede;
}
.callout.small {
  padding: 0.5rem;
}
.callout.large {
  padding: 3rem;
}

/* =========================================================================
   COMPONENT: .cms-callout
   Refresh-era "Callout" component (_cms/specs/callout/design-spec.md).
   Deliberately namespaced to avoid colliding with the legacy `.callout` /
   `.callout.primary` / `.callout.small` rules directly above — those are
   untouched by this block. Card background stays white/near-white for
   every variant; color is carried entirely by an accent value (icon badge,
   heading text, CTA button fill) via the --cms-callout-accent /
   --cms-callout-accent-dark custom properties set per color modifier.
   See _cms/specs/callout/prototype.html for the approved visual reference.
========================================================================= */
.cms-callout {
  position: relative;
  border: 1px solid var(--gray-light);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow-sm);
  background-color: var(--white);
  color: var(--gray-dark);
  font: var(--body);
  padding: var(--space-6); /* default/medium size — no size modifier applied */
  margin: 0 0 var(--space-6);
  max-width: 100%;
}
.cms-callout > *:first-child {
  margin-top: 0;
}
.cms-callout > *:last-child {
  margin-bottom: 0;
}

/* ── Size modifiers ── */
.cms-callout--small {
  padding: var(--space-3);
}
.cms-callout--large {
  padding: var(--space-12);
}

/* ── Color variants ── */
.cms-callout--primary {
  --cms-callout-accent: var(--purple-primary);
  --cms-callout-accent-dark: var(--purple-dark);
}
.cms-callout--secondary {
  --cms-callout-accent: var(--gray-darker);
  --cms-callout-accent-dark: var(--black-off);
}
.cms-callout--alert {
  --cms-callout-accent: var(--red-primary);
  --cms-callout-accent-dark: var(--red-dark);
}
.cms-callout--success {
  --cms-callout-accent: var(--green-dark);
  --cms-callout-accent-dark: var(--green-darker);
}
.cms-callout--warning {
  --cms-callout-accent: var(--yellow-dark);
  --cms-callout-accent-dark: var(--yellow-darker);
}

/* ── Icon + heading header row — side-by-side flex row, wraps on narrow viewports ── */
.cms-callout__header {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-3);
}
.cms-callout__icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1.5px solid var(--cms-callout-accent, var(--gray-mid));
  border-radius: var(--border-radius-full);
  color: var(--cms-callout-accent, var(--gray-dark));
  font-size: 0.9rem;
  line-height: 1;
}
.cms-callout__heading {
  font-family: var(--slab);
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.25;
  color: var(--cms-callout-accent, var(--heading));
  margin: 0;
}

/* ── Divider — only rendered when both the icon/heading header and body content are present ── */
.cms-callout__divider {
  border: 0;
  border-top: 1px solid var(--gray-light);
  margin: var(--space-4) 0;
}

/* ── Body content ── */
.cms-callout__body {
  margin-bottom: var(--space-3);
}
.cms-callout__paragraph {
  font: var(--body);
  color: var(--gray-dark);
  margin: 0 0 var(--space-3);
}
.cms-callout__list {
  font: var(--body);
  color: var(--gray-dark);
  list-style: none;
  margin: 0 0 var(--space-3);
  padding-left: 0;
}
.cms-callout__list li {
  position: relative;
  padding-left: var(--space-5);
  margin-bottom: var(--space-2);
}
.cms-callout__list li::before {
  content: '';
  position: absolute;
  left: 2px;
  top: 0.55em;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cms-callout-accent, var(--gray-mid));
}
.cms-callout__header + .cms-callout__body,
.cms-callout > .cms-callout__body:first-child {
  margin-top: 0;
}

/* ── CTA — filled pill button, not an inline text link ── */
.cms-callout__cta {
  margin-top: var(--space-2);
}
.cms-callout__cta-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font: var(--body);
  font-weight: 700;
  color: var(--white);
  background: var(--cms-callout-accent, var(--purple-primary));
  border-radius: var(--border-radius-pill);
  padding: var(--space-2) var(--space-5);
  text-decoration: none;
  transition: background-color 0.15s ease;
}
.cms-callout__cta-link:hover,
.cms-callout__cta-link:focus {
  background: var(--cms-callout-accent-dark, var(--purple-dark));
  color: var(--white);
}
.cms-callout__cta-link:focus-visible {
  outline: 2px solid var(--cms-callout-accent, var(--purple-primary));
  outline-offset: 2px;
}
.cms-callout__cta-link i {
  font-size: 0.8em;
}

/* ── Responsive: tighten Large padding on narrow viewports so it doesn't dominate small screens ── */
@media screen and (max-width: 39.9375em) {
  .cms-callout--large {
    padding: var(--space-6);
  }
}

.media-object {
  margin-bottom: 1rem;
  display: block;
}
.media-object img {
  max-width: none;
}
@media screen and (max-width: 39.9375em) {
  .media-object.stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    display: block;
  }
  .media-object.stack-for-small .media-object-section img {
    width: 100%;
  }
}
.media-object-section {
  display: table-cell;
  vertical-align: top;
}
.media-object-section:first-child {
  padding-right: 1rem;
}
.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}
.media-object-section > :last-child {
  margin-bottom: 0;
}
.media-object-section.middle {
  vertical-align: middle;
}
.media-object-section.bottom {
  vertical-align: bottom;
}
body.is-reveal-open {
  overflow: hidden;
}
html.is-reveal-open,
html.is-reveal-open body {
  height: 100%;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.reveal-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1005;
  background-color: #0a0a0a73;
  overflow-y: scroll;
}
.reveal {
  display: none;
  z-index: 1006;
  padding: 1rem;
  border: 1px solid #cacaca;
  background-color: #fefefe;
  border-radius: 3px;
  position: relative;
  top: 100px;
  margin-left: auto;
  margin-right: auto;
  overflow-y: auto;
}
[data-whatinput="mouse"] .reveal {
  outline: 0;
}
@media screen and (min-width: 40em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column,
.reveal .columns {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 40em) {
  .reveal {
    width: 600px;
    max-width: 62.5rem;
  }
}
@media screen and (min-width: 40em) {
  .reveal .reveal {
    left: auto;
    right: auto;
    margin: 0 auto;
  }
}
.reveal.collapse {
  padding: 0;
}
@media screen and (min-width: 40em) {
  .reveal.tiny {
    width: 30%;
    max-width: 62.5rem;
  }
}
@media screen and (min-width: 40em) {
  .reveal.small {
    width: 50%;
    max-width: 62.5rem;
  }
}
@media screen and (min-width: 40em) {
  .reveal.large {
    width: 90%;
    max-width: 62.5rem;
  }
}
.reveal.full {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  max-width: none;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}
@media screen and (max-width: 39.9375em) {
  .reveal {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    max-width: none;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}
.reveal.without-overlay {
  position: fixed;
}
table {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 3px;
}
table thead,
table tbody,
table tfoot {
  border: 1px solid #f1f1f1;
  background-color: #fefefe;
}
table caption {
  font-weight: 700;
  padding: 0.5rem 0.625rem 0.625rem;
}
table thead,
table tfoot {
  background: #f8f8f8;
  color: #0a0a0a;
}
table thead tr,
table tfoot tr {
  background: transparent;
}
table thead th,
table thead td,
table tfoot th,
table tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: 700;
  text-align: left;
}
table tbody tr:nth-child(2n) {
  background-color: #f1f1f1;
}
table tbody th,
table tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}
@media screen and (max-width: 63.9375em) {
  table.stack thead,
  table.stack tfoot {
    display: none;
  }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block;
  }
  table.stack td {
    border-top: 0;
  }
}
table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
}
table.hover tr:hover {
  background-color: #f9f9f9;
}
table.hover tr:nth-of-type(2n):hover {
  background-color: #ececec;
}
.table-scroll {
  overflow-x: auto;
}
.table-scroll table {
  width: auto;
}
.badge {
  display: inline-block;
  padding: 0.3em;
  min-width: 2.1em;
  font-size: 0.6rem;
  text-align: center;
  border-radius: 50%;
  background: #2ba6cb;
  color: #fefefe;
}
.badge.secondary {
  background: #e9e9e9;
  color: #0a0a0a;
}
.badge.alert {
  background: #c60f13;
  color: #fefefe;
}
.badge.success {
  background: #5da423;
  color: #fefefe;
}
.badge.warning {
  background: #ffae00;
  color: #fefefe;
}
.badge.body-font,
.badge.header {
  background: #222;
  color: #fefefe;
}
.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  border-radius: 3px;
  background: #00b0c7;
  color: #fefefe;
}
.label.secondary {
  background: #e9e9e9;
  color: #0a0a0a;
}
.label.alert {
  background: #af282e;
  color: #fefefe;
}
.label.success {
  background: #74b843;
  color: #fefefe;
}
.label.warning {
  background: #ffae00;
  color: #fefefe;
}
.label.body-font,
.label.header {
  background: #222;
  color: #fefefe;
}
.progress {
  background-color: #cacaca;
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 3px;
}
.progress.primary .progress-meter {
  background-color: #2ba6cb;
}
.progress.secondary .progress-meter {
  background-color: #e9e9e9;
}
.progress.alert .progress-meter {
  background-color: #c60f13;
}
.progress.success .progress-meter {
  background-color: #5da423;
}
.progress.warning .progress-meter {
  background-color: #ffae00;
}
.progress.body-font .progress-meter,
.progress.header .progress-meter {
  background-color: #222;
}
.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #2ba6cb;
  border-radius: 3px;
}
.progress-meter-text {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fefefe;
  white-space: nowrap;
  border-radius: 3px;
}
.has-tip {
  border-bottom: dotted 1px #8a8a8a;
  font-weight: 700;
  position: relative;
  display: inline-block;
  cursor: help;
}
.tooltip {
  background-color: #0a0a0a;
  color: #fefefe;
  font-size: 80%;
  padding: 0.75rem;
  position: absolute;
  z-index: 10;
  top: calc(100% + 0.6495rem);
  max-width: 10rem !important;
  border-radius: 3px;
}
.tooltip:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent transparent #0a0a0a;
  border-bottom-style: solid;
  border-top-width: 0;
  bottom: 100%;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%);
}
.tooltip.top:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: #0a0a0a transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  top: 100%;
  bottom: auto;
}
.tooltip.left:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent transparent transparent #0a0a0a;
  border-left-style: solid;
  border-right-width: 0;
  bottom: auto;
  left: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.tooltip.right:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent #0a0a0a transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
  inset: 50% 100% auto auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.flex-video {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  margin-bottom: 1rem;
  overflow: hidden;
}
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.flex-video.widescreen {
  padding-bottom: 56.25%;
}
.flex-video.vimeo {
  padding-top: 0;
}
.orbit {
  position: relative;
}
.orbit-container {
  position: relative;
  margin: 0;
  overflow: hidden;
  list-style: none;
}
.orbit-slide {
  width: 100%;
  max-height: 100%;
}
.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}
.orbit-figure {
  margin: 0;
}
.orbit-image {
  margin: 0;
  width: 100%;
  max-width: 100%;
}
.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  margin-bottom: 0;
  color: #fefefe;
  background-color: #0a0a0a80;
}
.orbit-previous,
.orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe;
}
[data-whatinput="mouse"] .orbit-previous,
[data-whatinput="mouse"] .orbit-next {
  outline: 0;
}
.orbit-previous:hover,
.orbit-next:hover,
.orbit-previous:active,
.orbit-next:active,
.orbit-previous:focus,
.orbit-next:focus {
  background-color: #0a0a0a80;
}
.orbit-previous {
  left: 0;
}
.orbit-next {
  left: auto;
  right: 0;
}
.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}
[data-whatinput="mouse"] .orbit-bullets {
  outline: 0;
}
.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  background-color: #cacaca;
  border-radius: 50%;
}
.orbit-bullets button:hover,
.orbit-bullets button.is-active {
  background-color: #8a8a8a;
}
.thumbnail {
  border: solid 4px #fefefe;
  box-shadow: 0 0 0 1px #0a0a0a33;
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  transition: box-shadow 0.2s ease-out;
  border-radius: 3px;
  margin-bottom: 1rem;
}
.thumbnail:hover,
.thumbnail:focus {
  box-shadow: 0 0 6px 1px #2ba6cb80;
}
.sticky-container {
  position: relative;
}
.sticky {
  position: absolute;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translateZ(0);
}
.sticky.is-stuck {
  position: fixed;
  z-index: 5;
}
.sticky.is-stuck.is-at-top {
  top: 0;
}
.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}
.sticky.is-anchored {
  position: absolute;
  left: auto;
  right: auto;
}
.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}
.row {
  max-width: 62.5rem;
  margin-left: auto;
  margin-right: auto;
}
.row:before,
.row:after {
  content: " ";
  display: table;
}
.row:after {
  clear: both;
}
.row.collapse > .column,
.row.collapse > .columns {
  padding-left: 0;
  padding-right: 0;
}
.row .row {
  max-width: none;
  /* margin-left: -0.9375rem; */
  /* margin-right: -0.9375rem; */
}
.row .row.collapse {
  margin-left: 0;
  margin-right: 0;
}
.row.expanded {
  max-width: none;
}
.row.expanded .row {
  margin-left: auto;
  margin-right: auto;
}
.column,
.columns {
  width: 100%;
  float: left;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.columns.onecol-content {
  padding-left: 0;
  padding-right: 0;
}

.column:last-child:not(:first-child),
.columns:last-child:not(:first-child) {
  float: right;
}
.column.end:last-child:last-child,
.end.columns:last-child:last-child {
  float: left;
}
.column.row.row,
.row.row.columns {
  float: none;
}
.row .column.row.row,
.row .row.row.columns {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}
.small-1 {
  width: 8.33333%;
}
.small-push-1 {
  position: relative;
  left: 8.33333%;
}
.small-pull-1 {
  position: relative;
  left: -8.33333%;
}
.small-offset-0 {
  margin-left: 0%;
}
.small-2 {
  width: 16.66667%;
}
.small-push-2 {
  position: relative;
  left: 16.66667%;
}
.small-pull-2 {
  position: relative;
  left: -16.66667%;
}
.small-offset-1 {
  margin-left: 8.33333%;
}
.small-3 {
  width: 25%;
}
.small-push-3 {
  position: relative;
  left: 25%;
}
.small-pull-3 {
  position: relative;
  left: -25%;
}
.small-offset-2 {
  margin-left: 16.66667%;
}
.small-4 {
  width: 33.33333%;
}
.small-push-4 {
  position: relative;
  left: 33.33333%;
}
.small-pull-4 {
  position: relative;
  left: -33.33333%;
}
.small-offset-3 {
  margin-left: 25%;
}
.small-5 {
  width: 41.66667%;
}
.small-push-5 {
  position: relative;
  left: 41.66667%;
}
.small-pull-5 {
  position: relative;
  left: -41.66667%;
}
.small-offset-4 {
  margin-left: 33.33333%;
}
.small-6 {
  width: 50%;
}
.small-push-6 {
  position: relative;
  left: 50%;
}
.small-pull-6 {
  position: relative;
  left: -50%;
}
.small-offset-5 {
  margin-left: 41.66667%;
}
.small-7 {
  width: 58.33333%;
}
.small-push-7 {
  position: relative;
  left: 58.33333%;
}
.small-pull-7 {
  position: relative;
  left: -58.33333%;
}
.small-offset-6 {
  margin-left: 50%;
}
.small-8 {
  width: 66.66667%;
}
.small-push-8 {
  position: relative;
  left: 66.66667%;
}
.small-pull-8 {
  position: relative;
  left: -66.66667%;
}
.small-offset-7 {
  margin-left: 58.33333%;
}
.small-9 {
  width: 75%;
}
.small-push-9 {
  position: relative;
  left: 75%;
}
.small-pull-9 {
  position: relative;
  left: -75%;
}
.small-offset-8 {
  margin-left: 66.66667%;
}
.small-10 {
  width: 83.33333%;
}
.small-push-10 {
  position: relative;
  left: 83.33333%;
}
.small-pull-10 {
  position: relative;
  left: -83.33333%;
}
.small-offset-9 {
  margin-left: 75%;
}
.small-11 {
  width: 91.66667%;
}
.small-push-11 {
  position: relative;
  left: 91.66667%;
}
.small-pull-11 {
  position: relative;
  left: -91.66667%;
}
.small-offset-10 {
  margin-left: 83.33333%;
}
.small-12 {
  width: 100%;
}
.small-offset-11 {
  margin-left: 91.66667%;
}
.small-up-1 > .column,
.small-up-1 > .columns {
  width: 100%;
  float: left;
}
.small-up-1 > .column:nth-of-type(n),
.small-up-1 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-1 > .column:nth-of-type(n + 1),
.small-up-1 > .columns:nth-of-type(n + 1) {
  clear: both;
}
.small-up-1 > .column:last-child,
.small-up-1 > .columns:last-child {
  float: left;
}
.small-up-2 > .column,
.small-up-2 > .columns {
  width: 50%;
  float: left;
}
.small-up-2 > .column:nth-of-type(n),
.small-up-2 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-2 > .column:nth-of-type(odd),
.small-up-2 > .columns:nth-of-type(odd) {
  clear: both;
}
.small-up-2 > .column:last-child,
.small-up-2 > .columns:last-child {
  float: left;
}
.small-up-3 > .column,
.small-up-3 > .columns {
  width: 33.33333%;
  float: left;
}
.small-up-3 > .column:nth-of-type(n),
.small-up-3 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-3 > .column:nth-of-type(3n + 1),
.small-up-3 > .columns:nth-of-type(3n + 1) {
  clear: both;
}
.small-up-3 > .column:last-child,
.small-up-3 > .columns:last-child {
  float: left;
}
.small-up-4 > .column,
.small-up-4 > .columns {
  width: 25%;
  float: left;
}
.small-up-4 > .column:nth-of-type(n),
.small-up-4 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-4 > .column:nth-of-type(4n + 1),
.small-up-4 > .columns:nth-of-type(4n + 1) {
  clear: both;
}
.small-up-4 > .column:last-child,
.small-up-4 > .columns:last-child {
  float: left;
}
.small-up-5 > .column,
.small-up-5 > .columns {
  width: 20%;
  float: left;
}
.small-up-5 > .column:nth-of-type(n),
.small-up-5 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-5 > .column:nth-of-type(5n + 1),
.small-up-5 > .columns:nth-of-type(5n + 1) {
  clear: both;
}
.small-up-5 > .column:last-child,
.small-up-5 > .columns:last-child {
  float: left;
}
.small-up-6 > .column,
.small-up-6 > .columns {
  width: 16.66667%;
  float: left;
}
.small-up-6 > .column:nth-of-type(n),
.small-up-6 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-6 > .column:nth-of-type(6n + 1),
.small-up-6 > .columns:nth-of-type(6n + 1) {
  clear: both;
}
.small-up-6 > .column:last-child,
.small-up-6 > .columns:last-child {
  float: left;
}
.small-up-7 > .column,
.small-up-7 > .columns {
  width: 14.28571%;
  float: left;
}
.small-up-7 > .column:nth-of-type(n),
.small-up-7 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-7 > .column:nth-of-type(7n + 1),
.small-up-7 > .columns:nth-of-type(7n + 1) {
  clear: both;
}
.small-up-7 > .column:last-child,
.small-up-7 > .columns:last-child {
  float: left;
}
.small-up-8 > .column,
.small-up-8 > .columns {
  width: 12.5%;
  float: left;
}
.small-up-8 > .column:nth-of-type(n),
.small-up-8 > .columns:nth-of-type(n) {
  clear: none;
}
.small-up-8 > .column:nth-of-type(8n + 1),
.small-up-8 > .columns:nth-of-type(8n + 1) {
  clear: both;
}
.small-up-8 > .column:last-child,
.small-up-8 > .columns:last-child {
  float: left;
}
.small-collapse > .column,
.small-collapse > .columns {
  padding-left: 0;
  padding-right: 0;
}
.small-collapse .row,
.expanded.row .small-collapse.row {
  margin-left: 0;
  margin-right: 0;
}
.small-uncollapse > .column,
.small-uncollapse > .columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.small-centered {
  float: none;
  margin-left: auto;
  margin-right: auto;
}
.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  margin-left: 0;
  margin-right: 0;
  float: left;
}
@media screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.66667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .medium-offset-1 {
    margin-left: 8.33333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.66667%;
  }
  .medium-4 {
    width: 33.33333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.66667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .medium-offset-4 {
    margin-left: 33.33333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.66667%;
  }
  .medium-7 {
    width: 58.33333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.66667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .medium-offset-7 {
    margin-left: 58.33333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.66667%;
  }
  .medium-10 {
    width: 83.33333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.66667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .medium-offset-10 {
    margin-left: 83.33333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.66667%;
  }
  .medium-up-1 > .column,
  .medium-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .medium-up-1 > .column:nth-of-type(n),
  .medium-up-1 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(n + 1),
  .medium-up-1 > .columns:nth-of-type(n + 1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child,
  .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column,
  .medium-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .medium-up-2 > .column:nth-of-type(n),
  .medium-up-2 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(odd),
  .medium-up-2 > .columns:nth-of-type(odd) {
    clear: both;
  }
  .medium-up-2 > .column:last-child,
  .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column,
  .medium-up-3 > .columns {
    width: 33.33333%;
    float: left;
  }
  .medium-up-3 > .column:nth-of-type(n),
  .medium-up-3 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n + 1),
  .medium-up-3 > .columns:nth-of-type(3n + 1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child,
  .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column,
  .medium-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .medium-up-4 > .column:nth-of-type(n),
  .medium-up-4 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n + 1),
  .medium-up-4 > .columns:nth-of-type(4n + 1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child,
  .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column,
  .medium-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .medium-up-5 > .column:nth-of-type(n),
  .medium-up-5 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n + 1),
  .medium-up-5 > .columns:nth-of-type(5n + 1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child,
  .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column,
  .medium-up-6 > .columns {
    width: 16.66667%;
    float: left;
  }
  .medium-up-6 > .column:nth-of-type(n),
  .medium-up-6 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n + 1),
  .medium-up-6 > .columns:nth-of-type(6n + 1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child,
  .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column,
  .medium-up-7 > .columns {
    width: 14.28571%;
    float: left;
  }
  .medium-up-7 > .column:nth-of-type(n),
  .medium-up-7 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n + 1),
  .medium-up-7 > .columns:nth-of-type(7n + 1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child,
  .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column,
  .medium-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .medium-up-8 > .column:nth-of-type(n),
  .medium-up-8 > .columns:nth-of-type(n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n + 1),
  .medium-up-8 > .columns:nth-of-type(8n + 1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child,
  .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column,
  .medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .medium-collapse .row,
  .expanded.row .medium-collapse.row {
    margin-left: 0;
    margin-right: 0;
  }
  .medium-uncollapse > .column,
  .medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
  .medium-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}
@media screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.66667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .large-offset-1 {
    margin-left: 8.33333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.66667%;
  }
  .large-4 {
    width: 33.33333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.66667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .large-offset-4 {
    margin-left: 33.33333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.66667%;
  }
  .large-7 {
    width: 58.33333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.66667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .large-offset-7 {
    margin-left: 58.33333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.66667%;
  }
  .large-10 {
    width: 83.33333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.66667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .large-offset-10 {
    margin-left: 83.33333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.66667%;
  }
  .large-up-1 > .column,
  .large-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .large-up-1 > .column:nth-of-type(n),
  .large-up-1 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(n + 1),
  .large-up-1 > .columns:nth-of-type(n + 1) {
    clear: both;
  }
  .large-up-1 > .column:last-child,
  .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column,
  .large-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .large-up-2 > .column:nth-of-type(n),
  .large-up-2 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(odd),
  .large-up-2 > .columns:nth-of-type(odd) {
    clear: both;
  }
  .large-up-2 > .column:last-child,
  .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column,
  .large-up-3 > .columns {
    width: 33.33333%;
    float: left;
  }
  .large-up-3 > .column:nth-of-type(n),
  .large-up-3 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n + 1),
  .large-up-3 > .columns:nth-of-type(3n + 1) {
    clear: both;
  }
  .large-up-3 > .column:last-child,
  .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column,
  .large-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .large-up-4 > .column:nth-of-type(n),
  .large-up-4 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n + 1),
  .large-up-4 > .columns:nth-of-type(4n + 1) {
    clear: both;
  }
  .large-up-4 > .column:last-child,
  .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column,
  .large-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .large-up-5 > .column:nth-of-type(n),
  .large-up-5 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n + 1),
  .large-up-5 > .columns:nth-of-type(5n + 1) {
    clear: both;
  }
  .large-up-5 > .column:last-child,
  .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column,
  .large-up-6 > .columns {
    width: 16.66667%;
    float: left;
  }
  .large-up-6 > .column:nth-of-type(n),
  .large-up-6 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n + 1),
  .large-up-6 > .columns:nth-of-type(6n + 1) {
    clear: both;
  }
  .large-up-6 > .column:last-child,
  .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column,
  .large-up-7 > .columns {
    width: 14.28571%;
    float: left;
  }
  .large-up-7 > .column:nth-of-type(n),
  .large-up-7 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n + 1),
  .large-up-7 > .columns:nth-of-type(7n + 1) {
    clear: both;
  }
  .large-up-7 > .column:last-child,
  .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column,
  .large-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .large-up-8 > .column:nth-of-type(n),
  .large-up-8 > .columns:nth-of-type(n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n + 1),
  .large-up-8 > .columns:nth-of-type(8n + 1) {
    clear: both;
  }
  .large-up-8 > .column:last-child,
  .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column,
  .large-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .large-collapse .row,
  .expanded.row .large-collapse.row {
    margin-left: 0;
    margin-right: 0;
  }
  .large-uncollapse > .column,
  .large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
  }
  .large-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}
.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  width: 20px;
  height: 16px;
}
.menu-icon:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background: #fefefe;
  top: 0;
  left: 0;
  box-shadow:
    0 7px #fefefe,
    0 14px #fefefe;
}
.menu-icon:hover:after {
  background: #cacaca;
  box-shadow:
    0 7px #cacaca,
    0 14px #cacaca;
}
.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  width: 20px;
  height: 16px;
}
.menu-icon.dark:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background: #0a0a0a;
  top: 0;
  left: 0;
  box-shadow:
    0 7px #0a0a0a,
    0 14px #0a0a0a;
}
.menu-icon.dark:hover:after {
  background: #8a8a8a;
  box-shadow:
    0 7px #8a8a8a,
    0 14px #8a8a8a;
}
.slide-in-down.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.slide-in-left.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translate(-100%);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translate(0);
}
.slide-in-up.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.slide-in-right.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translate(100%);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translate(0);
}
.slide-out-down.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}
.slide-out-right.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translate(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translate(100%);
}
.slide-out-up.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}
.slide-out-left.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translate(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translate(-100%);
}
.fade-in.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity;
}
.fade-in.mui-enter.mui-enter-active {
  opacity: 1;
}
.fade-out.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity;
}
.fade-out.mui-leave.mui-leave-active {
  opacity: 0;
}
.hinge-in-from-top.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
  transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-in-from-right.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
  transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-in-from-bottom.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
  transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
  -ms-transform-origin: bottom;
  transform-origin: bottom;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-in-from-left.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
  transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-in-from-middle-x.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
  transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-in-from-middle-y.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
  transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  opacity: 1;
}
.hinge-out-from-top.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}
.hinge-out-from-right.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}
.hinge-out-from-bottom.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: bottom;
  -ms-transform-origin: bottom;
  transform-origin: bottom;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
  transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}
.hinge-out-from-left.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
  transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}
.hinge-out-from-middle-x.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}
.hinge-out-from-middle-y.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
  transform: perspective(2000px) rotate(0);
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}
.scale-in-up.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}
.scale-in-down.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}
.scale-out-up.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5);
  opacity: 0;
}
.scale-out-down.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
  -ms-transform: scale(0.5);
  transform: scale(0.5);
  opacity: 0;
}
.spin-in.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
  -ms-transform: rotate(-0.75turn);
  transform: rotate(-0.75turn);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  opacity: 1;
}
.spin-out.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
  -ms-transform: rotate(0.75turn);
  transform: rotate(0.75turn);
  opacity: 0;
}
.spin-in-ccw.mui-enter {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
  -ms-transform: rotate(0.75turn);
  transform: rotate(0.75turn);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 0;
}
.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  opacity: 1;
}
.spin-out-ccw.mui-leave {
  transition-duration: 0.5s;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  transition-property: -webkit-transform, opacity;
  transition-property: transform, opacity;
  opacity: 1;
}
.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
  -ms-transform: rotate(-0.75turn);
  transform: rotate(-0.75turn);
  opacity: 0;
}
.slow {
  transition-duration: 0.75s !important;
}
.fast {
  transition-duration: 0.25s !important;
}
.linear {
  transition-timing-function: linear !important;
}
.ease {
  transition-timing-function: ease !important;
}
.ease-in {
  transition-timing-function: ease-in !important;
}
.ease-out {
  transition-timing-function: ease-out !important;
}
.ease-in-out {
  transition-timing-function: ease-in-out !important;
}
.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}
.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}
.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}
.short-delay {
  transition-delay: 0.3s !important;
}
.long-delay {
  transition-delay: 0.7s !important;
}
.shake {
  -webkit-animation-name: shake-7;
  animation-name: shake-7;
}
@-webkit-keyframes shake-7 {
  0%,
  10%,
  20%,
  30%,
  40%,
  50%,
  60%,
  70%,
  80%,
  90% {
    -webkit-transform: translateX(7%);
    transform: translate(7%);
  }
  5%,
  15%,
  25%,
  35%,
  45%,
  55%,
  65%,
  75%,
  85%,
  95% {
    -webkit-transform: translateX(-7%);
    transform: translate(-7%);
  }
}
@keyframes shake-7 {
  0%,
  10%,
  20%,
  30%,
  40%,
  50%,
  60%,
  70%,
  80%,
  90% {
    -webkit-transform: translateX(7%);
    transform: translate(7%);
  }
  5%,
  15%,
  25%,
  35%,
  45%,
  55%,
  65%,
  75%,
  85%,
  95% {
    -webkit-transform: translateX(-7%);
    transform: translate(-7%);
  }
}
.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
  animation-name: spin-cw-1turn;
}
@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
    transform: rotate(-1turn);
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
    transform: rotate(-1turn);
  }
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
  animation-name: spin-cw-1turn;
}
@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
.wiggle {
  -webkit-animation-name: wiggle-7deg;
  animation-name: wiggle-7deg;
}
@-webkit-keyframes wiggle-7deg {
  40%,
  50%,
  60% {
    -webkit-transform: rotate(7deg);
    transform: rotate(7deg);
  }
  35%,
  45%,
  55%,
  65% {
    -webkit-transform: rotate(-7deg);
    transform: rotate(-7deg);
  }
  0%,
  30%,
  70%,
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes wiggle-7deg {
  40%,
  50%,
  60% {
    -webkit-transform: rotate(7deg);
    transform: rotate(7deg);
  }
  35%,
  45%,
  55%,
  65% {
    -webkit-transform: rotate(-7deg);
    transform: rotate(-7deg);
  }
  0%,
  30%,
  70%,
  to {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
}
.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
.slow {
  -webkit-animation-duration: 0.75s !important;
  animation-duration: 0.75s !important;
}
.fast {
  -webkit-animation-duration: 0.25s !important;
  animation-duration: 0.25s !important;
}
.linear {
  -webkit-animation-timing-function: linear !important;
  animation-timing-function: linear !important;
}
.ease {
  -webkit-animation-timing-function: ease !important;
  animation-timing-function: ease !important;
}
.ease-in {
  -webkit-animation-timing-function: ease-in !important;
  animation-timing-function: ease-in !important;
}
.ease-out {
  -webkit-animation-timing-function: ease-out !important;
  animation-timing-function: ease-out !important;
}
.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
  animation-timing-function: ease-in-out !important;
}
.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}
.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}
.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
  animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}
.short-delay {
  -webkit-animation-delay: 0.3s !important;
  animation-delay: 0.3s !important;
}
.long-delay {
  -webkit-animation-delay: 0.7s !important;
  animation-delay: 0.7s !important;
}
.row {
  max-width: var(--max-width);
}
* {
  font-family: var(--geist);
}
section {
  overflow-x: hidden;
}
body {
  background: var(--background);
  color: var(--color);
  font: var(--body);
  -webkit-font-smoothing: antialiased;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-block: 2rem 1rem;
  color: var(--heading);
  a {
    color: inherit;
    text-decoration: none !important;
    font-weight: inherit !important;
    transition:
      text-shadow var(--transition),
      background-size var(--transition);
    background-image: linear-gradient(to right, currentColor, currentColor), linear-gradient(#00000080, #00000080);
    background-size:
      0% 0.125rem,
      100% 0.0625rem;
    background-position:
      left 100%,
      left 100%;
    background-repeat: no-repeat;
    padding-bottom: 0;
    &:hover {
      text-decoration: none !important;
      text-shadow:
        0 0 0.5px currentColor,
        0 0 0.5px currentColor;
      background-size:
        100% 0.125rem,
        100% 0.0625rem;
    }
  }
  .heading-invert & {
    a {
      text-decoration: underline;
    }
  }
}
h1,
.h1 {
  font: var(--h1);
}
h2,
.h2 {
  font: var(--h2);
}
h3,
.h3 {
  font: var(--h3);
}
h4,
.h4 {
  font: var(--h4);
}
h5,
.h5 {
  font: var(--h5);
}
h6,
.h6 {
  font: var(--h6);
}
p {
  font-size: 1em;
  margin-top: 1em;
  color: var(--gray-text);
}
figure {
  margin: 0;
}
a {
  color: var(--purple-medium);
  font-size: 1em;
}
a:hover,
a:focus {
  color: var(--purple-medium);
}
p a:hover,
p a:focus {
  text-decoration: underline;
}
main a:not(h1 a):not(h2 a):not(h3 a):not(h4 a):not(h5 a):not(h6 a) {
  text-decoration: underline;
  transition: text-shadow 0.2s ease;
}
main a:not(h1 a):not(h2 a):not(h3 a):not(h4 a):not(h5 a):not(h6 a):hover,
main a:not(h1 a):not(h2 a):not(h3 a):not(h4 a):not(h5 a):not(h6 a):focus {
  text-shadow:
    0 0 0.5px currentColor,
    0 0 0.5px currentColor;
}
main a:not(h1 a):not(h2 a):not(h3 a):not(h4 a):not(h5 a):not(h6 a):not([class]):visited {
  /* color: var(--cyan-primary); */
}
a.button {
  text-decoration: none;
}
.button {
  background-color: var(--purple-dark);
}
ul,
ol {
  margin-left: 25px;
  padding-left: 25px;
}
.orbit-container {
  padding-left: 0;
}
blockquote {
  margin: 1rem 0;
}
.wrapper-main {
  position: relative;
}
small {
  font-size: 110%;
}
.mid-main ul {
  margin: 10px 0 10px 20px;
  padding-left: 10px;
}
.mid-main ul li {
  margin: 5px 0 0 20px;
}
#skip a {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
#skip a:focus {
  position: static;
  width: auto;
  height: auto;
}
.top-nav {
  background: var(--purple-primary);
  border-bottom: var(--border-width-thicker) solid var(--white);
  height: var(--header-height);
  padding-top: 2px;
}
.top-bar ul.menu,
.top-bar {
  background: none;
}
.top-bar-left ul li,
.top-bar-right ul li {
  float: left;
  display: inline-block;
}
.top-bar ul.menu > li > a,
.top-bar {
  padding: 0 var(--space-4);
}
.top-bar ul.menu > li > a {
  padding: 10px 8px;
  color: var(--white);
  font-size: 0.78em;
  text-transform: uppercase;
}
.top-bar ul.menu > li > a:hover {
  color: var(--yellow-primary);
}
.top-bar ul.menu > li:first-child > a {
  padding-left: 0;
}
.top-bar > .row {
  position: relative;
}
.search-top {
  width: 189px;
  margin-right: 0;
  position: absolute;
  right: 0;
  top: 6px;
}
.search-top input {
  height: 22px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  font-size: 0.8em;
  width: 100%;
  position: relative;
  margin-right: 0;
  padding: 0 25px 0 10px;
  background: var(--white) url(https://www.mchenry.edu/_files/img/top-search.png) no-repeat right;
  background-position: 96% 1px;
}
.search-top input::-webkit-input-placeholder {
  color: #8b8c8d;
}
.search-top input::-moz-placeholder {
  color: #8b8c8d;
}
.search-top input:-ms-input-placeholder {
  color: #8b8c8d;
}
.search-top input:-moz-placeholder {
  color: #8b8c8d;
}
.menu-icon.float-left,
.menu-icon.float-right {
  display: none;
}
.logo-sec {
  background: var(--yellow-primary);
}
.logo {
  text-align: center;
  position: relative;
}
.logo h1 {
  margin-bottom: 0;
}
.overlay {
  background: #0000004d;
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 40;
  display: none;
}
.overlay.show {
  display: block;
}
.logo a {
  display: inline-block;
  float: none;
}
.logo a {
  margin: 32px auto;
}
.ribbonContainer {
  position: absolute;
  top: 0;
  right: 0;
  width: 200px;
  overflow: hidden;
}
#ribbon {
  width: 55px;
  height: 140px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  z-index: 10;
}
.ribbonContainer .inset {
  width: 250px;
  height: 55px;
  position: absolute;
  top: -55px;
  left: -23px;
  z-index: 5;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background: #0000004d;
  box-shadow: 0 5px 10px #0000004d;
  -moz-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.3);
}
#ribbon .container {
  position: relative;
  width: 100%;
  height: 135px;
  overflow: hidden;
  margin: 0 auto;
}
#ribbon .content {
  width: 100%;
  padding-left: 3px;
  padding-right: 3px;
  height: 82px;
  background: var(--white);
}
#ribbon .content .green-sec {
  background: #52832f;
  width: 100%;
  height: 82px;
  z-index: 4;
  position: relative;
  padding-top: 18px;
  text-align: center;
}
#ribbon:hover .content .green-sec,
#ribbon:focus .content .green-sec {
  background: #479117;
}
#ribbon:hover .content .green-sec:after,
#ribbon:focus .content .green-sec:after {
  border-top: 49px solid #479117;
}
#ribbon:hover .content .green-sec:before,
#ribbon:focus .content .green-sec:before {
  border-top: 49px solid #479117;
}
#ribbon .content .green-sec:after {
  content: "";
  border-left: 49px solid transparent;
  border-bottom: 33px solid transparent;
  border-top: 49px solid #52832f;
  position: absolute;
  bottom: -79px;
  width: 27px;
  height: 27px;
  z-index: 99;
  right: 0;
}
#ribbon .content .green-sec:before {
  content: "";
  border-right: 49px solid transparent;
  border-bottom: 33px solid transparent;
  border-top: 49px solid #52832f;
  position: absolute;
  bottom: -79px;
  width: 27px;
  height: 27px;
  z-index: 99;
  left: 0;
}
#ribbon .left_corner {
  width: 100px;
  height: 100px;
  background: var(--white);
  position: absolute;
  bottom: 20px;
  left: -50px;
  z-index: 1;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#ribbon .right_corner {
  width: 100px;
  height: 100px;
  background: var(--white);
  position: absolute;
  bottom: 20px;
  right: -50px;
  z-index: 1;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
#ribbon .ribbon-txt {
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  display: block;
  font-weight: 700;
  word-spacing: 5px;
  color: var(--white);
  font-size: 0.95em;
  white-space: nowrap;
  text-transform: uppercase;
  position: relative;
  z-index: 999;
  margin: 0;
  padding: 0;
  width: 100%;
  height: auto;
}
.primary-nav {
  background: var(--purple-primary);
  border-bottom: 4px solid var(--white);
  border-top: 4px solid var(--white);
  position: relative;
}
.primary-nav .menu {
  width: 100%;
  display: table;
}
.primary-nav .menu a {
  font-size: 1.3em;
  color: var(--white);
  font-weight: 700;
  padding: 13px 0;
}
.primary-nav .menu li {
  position: static;
  border-bottom: 0;
}
.primary-nav .menu li .dropdown {
  visibility: hidden;
  opacity: 0;
  transition-delay: 0.5s;
  width: 100%;
  position: absolute;
  top: 46px;
  left: 0;
  background: #4b3190e6;
  z-index: 1000;
  padding: 35px 0 75px;
  border-top: 4px solid var(--white);
}
.primary-nav .menu li.has-dropdown.device .dropdown {
  display: none;
}
.primary-nav .menu li.has-dropdown.device .dropdown.active-dropdown {
  display: block;
}
.primary-nav .menu li .dropdown .nav-container {
  max-width: 1200px;
  margin: 0 auto;
}
.primary-nav .menu li .dropdown .nav-container .content-area,
.primary-nav .menu li .dropdown .nav-container .links-area {
  width: 50%;
  float: left;
}
.primary-nav .menu li .dropdown .nav-container .content-area {
  padding-left: 60px;
}
.primary-nav .menu li .dropdown .nav-container .content-area h2 {
  font-size: 1.87em;
  font-weight: 700;
  color: var(--white);
  text-align: left;
  text-transform: uppercase;
}
.primary-nav .menu li .dropdown .nav-container .content-area p {
  font-size: 1.12em;
  color: var(--white);
  text-align: left;
  margin-top: 20px;
}
.primary-nav .menu li .dropdown .nav-container .content-area a {
  background: var(--yellow-primary);
  font-size: 1.37em;
  color: var(--purple-primary);
  text-transform: capitalize;
  width: 275px;
  height: 50px;
  margin-top: 30px;
  text-align: center;
  display: inline-block;
  padding: 0;
  line-height: 50px;
  float: left;
}
.primary-nav .menu li .dropdown .nav-container .content-area a:hover {
  background-color: #f9ad0b;
  font-weight: 600;
  text-decoration: underline;
}
.primary-nav .menu li .dropdown .nav-container .links-area {
  padding-left: 60px;
  border-left: 1px solid #fdb931;
}
.primary-nav .menu li .dropdown .nav-container .links-area ul {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
}
.primary-nav .menu li .dropdown .nav-container .links-area ul li {
  display: block;
  margin-bottom: 10px;
  text-align: left;
  font-size: 1.12em;
}
.primary-nav .menu li .dropdown .nav-container .links-area ul li a {
  font-size: 1.12em;
  text-transform: none;
  text-align: left;
  color: var(--white);
}
.primary-nav .menu li .dropdown .nav-container .links-area ul li a:hover,
.primary-nav .menu li .dropdown .nav-container .links-area ul li a:focus {
  background: none;
  text-decoration: underline;
}
.primary-nav .menu li .dropdown .nav-container .links-area ul li:hover {
  background: none !important;
}
.primary-nav .menu li:hover {
  background: var(--white);
  color: var(--purple-primary);
}
.primary-nav .menu li:hover a {
  color: var(--purple-primary);
}
.primary-nav .menu li:hover .dropdown {
  visibility: visible;
  opacity: 1;
}
.primary-nav .menu li:hover a {
  position: relative;
}
.primary-nav .menu > li.has-dropdown:hover > a:after {
  content: "";
  width: 0;
  z-index: 9;
  height: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  position: absolute;
  top: 46px;
  left: 50%;
  margin-left: -20px;
  border-top: 20px solid var(--white);
}
.primary-nav .menu li:first-child a {
  padding-left: 0;
}
.primary-nav .menu li:last-child a {
  padding-right: 0;
}
.main-slider {
  position: relative;
  height: 439px;
  margin-bottom: 1rem;
}
#home .main-slider.hero-slider {
  margin-bottom: 0;
}
.large-8 .main-slider {
  padding: 0 !important;
}

.responsive.main-slider .orbit-container li img.orbit-image {
  top: 0;
}
.social-sec {
  position: fixed;
  right: 0;
  top: 575px;
  margin-left: 0;
  list-style: none;
  width: 39px;
  z-index: 999;
  border-top: 2px solid var(--white);
  border-left: 2px solid var(--white);
  border-right: 2px solid var(--white);
}
.social-sec a {
  background: url(https://www.mchenry.edu/_files/img/social/social-top.png) no-repeat left top;
  border-bottom: 2px solid var(--white);
  width: 35px;
  height: 35px;
  display: block;
  text-indent: -9999px;
}
.social-sec a.fb {
  background-position: 0 0;
}
.social-sec a.fb:hover {
  background-position: -39px 0;
  background-color: #9b70bf;
}
.social-sec a.twitter {
  background-position: 0 -37px;
}
.social-sec a.twitter:hover {
  background-position: -39px -37px;
  background-color: #9b70bf;
}
.social-sec a.in {
  background-position: 0 -74px;
}
.social-sec a.in:hover {
  background-position: -39px -74px;
  background-color: #9b70bf;
}
.social-sec a.insta {
  background-position: 0 -111px;
}
.social-sec a.insta:hover {
  background-position: -39px -111px;
  background-color: #9b70bf;
}
.social-sec a.youtube {
  background-position: 0 -185px;
}
.social-sec a.youtube:hover {
  background-position: -39px -185px;
  background-color: #9b70bf;
}
.social-sec a.rss {
  background-position: 0 -222px;
}
.social-sec a.rss:hover {
  background-position: -39px -222px;
  background-color: #9b70bf;
}
.main-slider .orbit-container {
  height: 426px !important;
}
.main-slider .orbit-container li,
.orbit {
  max-height: 100% !important;
  height: 100%;
}
.main-slider .orbit-container li {
  background-size: cover !important;
  background-position: center !important;
}
.main-slider .orbit-container li img.orbit-image {
  width: 100% !important;
  top: -10%;
  left: 0;
  position: absolute;
}
.responsive.main-slider .orbit-container li img.orbit-image {
  top: 0 !important;
}
.orbit-caption {
  bottom: 0;
  margin-bottom: 0;
  font-size: 3.12em;
  font-weight: 700;
  line-height: 50px;
  background: none;
  display: flex;
  align-items: flex-end;
  padding-right: 100px;
  background-color: var(--black-50);
  color: #fefefe;
}
.orbit-caption a {
  color: #fefefe;
  text-decoration: none;
  line-height: 1em;
}
.orbit-bullets {
  margin-top: -40px;
}
.orbit-bullets button {
  -webkit-box-shadow: 0 0 4px 3px #9a9a9a;
  box-shadow: 0 0 4px 3px #9a9a9a;
  background: #e0e6ef80;
  width: 12px;
  height: 12px;
}
.orbit-bullets button.is-active {
  background: #9cc695;
}
.foundation-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  -webkit-box-shadow: none;
  box-shadow: none;
  overflow: hidden;
  color: #0a0a0a;
}
.foundation-card > :last-child {
  margin-bottom: 0;
}
.foundation-card-divider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  padding: 1rem;
  background: #e6e6e6;
}
.foundation-card-divider > :last-child {
  margin-bottom: 0;
}
.foundation-card-section {
  -webkit-box-flex: 1;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  padding: 1rem;
}
.foundation-card-section > :last-child {
  margin-bottom: 0;
}
.foundation-card-image {
  min-height: 1px;
}
.info-block-main {
  margin-top: 50px;
}
.info-block-main div {
  position: relative;
}
/*
.info-block-main div a {
	height: 100%;
	text-transform: uppercase;
	width: 100%;
	text-align: left;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: absolute;
	top: 0;
	left: 0;
	padding-right: 15px;
	padding-left: 15px;
	padding-top: calc(100% - 60px);
}
*/
.info-block-main div a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 70px;
  background: var(--black-60);
  transition: background var(--transition);
  z-index: 0;
}
.info-block-main div a:hover:before {
  background: var(--black-80);
}
.info-block-main div a:after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  background: var(--yellow-primary);
  mask: url(arrow_circle_right.svg) center / contain no-repeat;
  -webkit-mask: url(arrow_circle_right.svg) center / contain no-repeat;
  flex-shrink: 0;
  opacity: 0;
  transform: translate(-0.25rem);
  transition:
    transform var(--transition),
    opacity var(--transition);
  position: relative;
  z-index: 1;
}
.info-block-main div a:hover:after {
  opacity: 1;
  transform: translate(0);
}
.info-block-main div a span {
  position: relative;
  z-index: 1;
  width: 100%;
  text-align: left;
  font-weight: 700;
  color: var(--white);
  font-size: 1.2em;
  text-transform: none;
  padding-right: 15px;
  line-height: 23px;
  background-color: #00000003;
}
.info-block-main div a span {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  line-height: 23px;
  max-height: 98px;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.info-block-main div.columns:first-child a span,
.info-block-main div.columns:last-child a span {
  padding-left: 15px;
  padding-right: 15px;
}
.info-block-main div.columns {
  padding: 10px 6px;
  margin-bottom: 12px;
}
.info-block-main div.columns:first-child {
  padding-left: 0;
}
.info-block-main div.columns:last-child {
  padding-right: 0;
}
.block-1,
.block-2,
.block-3,
.block-4 {
  height: 300px;
}
.block-1 div {
  background: url(https://www.mchenry.edu/_files/img/info-block/1-return.jpg) no-repeat;
  background-size: cover;
  height: 300px;
}
.block-2 div {
  background: url(https://www.mchenry.edu/_files/img/info-block/2-cte.jpg) no-repeat;
  background-size: cover;
  height: 300px;
}
.block-3 div {
  background: url(https://www.mchenry.edu/_files/img/info-block/3-community.jpg) no-repeat;
  background-size: cover;
  height: 300px;
}
.block-4 div {
  background: url(https://www.mchenry.edu/_files/img/info-block/4-spanish.jpg) no-repeat;
  background-size: cover;
  height: 300px;
}
.upcoming-mcc-sec {
  margin-bottom: 30px;
}
.upcoming-mcc-sec h2 {
  background: var(--purple-light);
  color: var(--white);
  text-transform: uppercase;
  line-height: 45px;
  font-size: 1.37em;
  font-weight: 700;
  font-family: var(--font-primary);
  padding-left: 19px;
  padding-right: 19px;
}
.upcoming-mcc-sec h2 a.more {
  float: right;
  font-size: 1.06em;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white);
}
.events {
  margin-bottom: 15px;
}
.events .date-sec {
  width: 65px;
  float: left;
  margin-top: 5px;
  border: 1px solid var(--purple-primary);
  padding: 5px;
  line-height: normal;
}
.events .date-sec span {
  display: block;
  width: 100%;
  font-size: 1.31em;
  font-weight: 700;
  color: var(--purple-primary);
  text-align: center;
  text-transform: uppercase;
  line-height: 21px;
}
.events .date-sec p {
  display: block;
  width: 100%;
  font-size: 2.87em;
  font-weight: 400;
  color: var(--purple-primary);
  text-align: center;
  margin: 0;
  padding: 0;
  line-height: 1;
  font-family: var(--font-primary);
}
.events .cal-info {
  width: calc(100% - 88px);
  float: right;
}
.events .cal-info h3 {
  font-size: 1.18em;
  color: var(--gray-text-dark);
  text-transform: none;
  font-weight: 700;
  font-family: var(--font-primary);
  margin: 0;
}
.events .cal-info h3 a {
  color: var(--purple-primary);
  text-decoration: none;
  font-size: 1.17em;
}
.events .cal-info h3 a:hover,
.events .cal-info h3 a:focus {
  color: var(--green-primary);
}
.events .cal-info p {
  font-size: 1.06em;
  color: var(--gray-text-dark);
}
.mccUpdates {
  background: var(--gray-lightest);
  margin-top: 15px;
  padding: 15px;
}
.mccUpdates:last-child {
  margin-bottom: 15px;
}
.mccUpdates h4 {
  font-size: 1.31em;
  color: var(--gray-text);
  font-family: var(--font-primary);
  margin: 0;
  font-weight: 700;
}
.mccUpdates h4 a {
  font-size: 1.3em;
  color: var(--purple-primary);
  text-decoration: none;
}
.mccUpdates h4 a:hover,
.mccUpdates h3 a:focus {
  color: var(--green-primary);
}
.mccUpdates p {
  font-size: 1.06em;
  color: var(--gray-text);
  line-height: normal;
  margin: 0;
  padding: 0;
}
.mccUpdates p a {
  text-decoration: underline;
}
.mcc-numbers h2 {
  background: var(--purple-light);
  text-transform: uppercase;
  color: var(--white);
  line-height: 45px;
  font-size: 1.37em;
  font-weight: 700;
  font-family: var(--font-primary);
  padding-left: 19px;
  padding-right: 19px;
}
.mcc-numbers h2 sup {
  font-size: 1em;
  font-weight: 400;
  top: 0;
}
.mcc-numbers h2 a.more {
  float: right;
  font-size: 1.06em;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white);
}
.num-notice p {
  font-size: 0.81em;
  color: #000;
  margin-top: 20px;
}
.num-content-wrapper ul {
  width: 100%;
  float: left;
  display: table;
  padding: 0;
  margin: 20px 0 0;
}
.num-content-wrapper ul li {
  display: table-cell;
  text-align: center;
}
.num-content-wrapper ul li a {
  display: block;
}
.num-content-wrapper ul li a:hover h3 {
  color: #7c69b0;
}
.num-content-wrapper ul li h3 {
  float: none;
  font-weight: 700;
  font-size: 3.12em;
  color: var(--purple-dark);
  font-family: var(--slab);
  width: auto;
  display: inline-block;
}
.num-content-wrapper ul li.ico-1 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-1.png) no-repeat left;
  margin: 0;
  padding-left: 80px;
}
.num-content-wrapper ul li.ico-2 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-2.png) no-repeat left;
  margin: 0;
  padding-left: 80px;
}
.num-content-wrapper ul li.ico-3 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-3.png) no-repeat left;
  margin: 0;
  padding-left: 65px;
}
.num-content-wrapper ul li.ico-4 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-4.png) no-repeat left;
  margin: 0;
  padding-left: 60px;
}
.num-content-wrapper ul li.ico-5 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-5.png) no-repeat left;
  margin: 0;
  padding-left: 95px;
}
.num-content-wrapper ul li.ico-6 h3 {
  background: url(https://www.mchenry.edu/_files/img/icon/ico-6.png) no-repeat left;
  margin: 0;
  padding-left: 110px;
}
.num-content-wrapper ul li p {
  color: var(--purple-dark);
  font-family: var(--geist);
  font-size: 1em;
  font-weight: 700;
  text-align: center;
  width: 100%;
}
.spotlight {
  background: var(--purple-primary);
  padding: 30px 0;
  margin-top: 15px;
}
.spotlight-area {
  text-align: center;
  margin-top: 15px;
}
.spotlight-area ul {
  width: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
}
.spotlight-area ul li {
  width: 35%;
  display: inline-block;
  float: none;
  padding: 0 4px;
}
.spotlight-area ul li a {
  width: 100%;
  background: none;
  border: 1px solid #816fb2;
  padding: 5px 0;
  text-transform: uppercase;
  border-radius: 0;
  font-size: 1.31em;
  font-weight: 700;
  color: var(--white);
  margin-bottom: 10px;
}
.spotlight-area ul li a:hover,
.spotlight-area ul li a:focus {
  background: none;
  border: 1px solid var(--white);
  color: var(--white);
  box-shadow: none;
}
.spotlight-area p {
  font-size: 1.31em;
  line-height: 10px;
  line-height: normal;
  color: var(--white);
  margin-bottom: 0;
}
.spotlight-area h2 {
  font-size: 3.12em;
  line-height: normal;
  color: var(--white);
  font-weight: 700;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  font-family: var(--font-primary);
}
.profile-pic {
  margin-right: 35px;
  display: block;
  float: left;
  position: absolute;
  left: 15px;
  top: 11px;
  margin-bottom: 15px;
}
.profile-pic img {
  border: 1px solid var(--white);
}
.video-sec {
  position: relative;
  padding-left: 170px;
}
.video-sec h2 {
  font-size: 1.93em;
  color: var(--white);
  font-weight: 700;
  font-family: var(--font-primary);
  text-transform: uppercase;
  margin: 0;
}
.video-sec h2 a {
  color: var(--white);
  text-decoration: none !important;
  background-image: linear-gradient(to right, var(--white), var(--white)), linear-gradient(#ffffff80, #ffffff80);
  background-size:
    0% 0.125rem,
    100% 0.0625rem;
  background-position:
    left 100%,
    left 100%;
  background-repeat: no-repeat;
  padding-bottom: 0.0125em;
}
.video-sec h2 a:hover,
.video-sec h2 a:focus {
  color: var(--white);
  background-size:
    100% 0.125rem,
    100% 0.0625rem;
}
.video-sec h3 {
  font-size: 1.31em;
  color: var(--white);
  font-weight: 700;
  font-family: var(--font-primary);
  text-transform: uppercase;
  margin: 0;
}
.video-sec p {
  font-size: 1.18em;
  color: var(--white);
  font-family: var(--font-primary);
  margin: 10px 0 0;
  padding-right: 25%;
}
.play-btn {
  position: absolute;
  right: 5%;
  top: 40%;
}
.life-at {
  margin-top: 40px;
}
.life-header h3 a.more {
  float: right;
  font-size: 1.06;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--white);
}
.life-header h3 a.more:after {
  content: ">";
  font-size: 1.06em;
  font-weight: 700;
  right: 0;
  margin-left: 5px;
}
.life-img {
  text-align: center;
  margin-bottom: 10px;
  margin-top: 9px;
}
.life-img div {
  margin-bottom: 30px;
}
.life-img img {
  width: 100%;
}
footer {
  background: var(--purple-primary);
  margin-top: 14px;
  overflow-x: hidden;
}
.footer-wrapper {
  padding-left: 0;
  padding-right: 0;
}
footer .footer-nav,
.footer-logo {
  margin-top: 43px;
}
footer .footer-nav h2 {
  font-size: 1.31em;
  text-transform: uppercase;
  margin: 0 0 12px;
  color: var(--white);
  font-weight: 700;
  font-family: var(--font-primary);
}
footer .footer-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer .footer-nav ul li {
  display: block;
  margin-bottom: 5px;
  line-height: 16px;
}
footer .footer-nav ul li.active a {
  text-decoration: underline;
}
footer .footer-nav ul li a {
  font-size: 0.93em;
  text-decoration: none;
  color: var(--white);
}
footer .footer-nav ul li a:hover,
footer .footer-nav ul li a:focus {
  text-decoration: underline;
}
.footer-logo {
  text-align: center;
}
.footer-logo a {
  margin-top: 45px;
  display: inline-block;
  text-align: center;
}
.footer-logo a img {
  width: 70%;
}
.social-wrapper,
.bottom-links-wrapper {
  padding-left: 15px;
  padding-right: 15px;
}
.social-icons {
  list-style: none;
  margin: 30px 0 0;
  padding: 0;
  text-align: center;
  width: 100%;
}
.social-icons li {
  display: inline-block;
  float: none;
}
.social-icons li a {
  background: #6f5aa6;
}
.social-icons li a img {
  display: block;
  opacity: 0.8;
  filter: alpha(opacity=80);
}
.social-icons li a:hover img,
.social-icons li a:focus img {
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.bottom-links-wrapper ul {
  list-style: none;
  margin: 8px 0 40px;
  padding: 0;
  text-align: center;
}
.bottom-links-wrapper ul li {
  display: inline-block;
  float: none;
  color: var(--white);
  font-size: 0.93em;
  margin: 0 7px;
}
.bottom-links-wrapper ul li a {
  color: var(--white);
}
@media (min-width: 1023px) {
  .inner-mid-main {
    margin-top: 2rem !important;
  }
}
.inner-mid-main {
  display: flex;
  flex-wrap: wrap;
}
.inner-mid-main .mid-main {
  order: 2;
}
.inner-mid-main .left-sidebar {
  order: 1;
}
.inner-mid-main .left-sidebar > * {
  float: left;
}
.inner-mid-main .addmissions-menu-sec {
  order: 0;
  width: 100%;
}
.row.inner-mid-main.workforce-wrapper > .main-slider,
.row.inner-mid-main.admissions-wrapper > .main-slider {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.inner-mid-main .left-sidebar,
.inner-mid-main .mid-main {
  padding: 0 20px;
}
.inner-mid-main .mid-main figure {
  margin: 0;
  padding: 0;
}
.inner-mid-main .mid-main .main-banner img {
  width: 100%;
}
#program-banner {
  padding: 20px 20px 30px;
}
#program-banner .flex-video {
  margin-bottom: 20px;
}
#program-banner figure {
  margin: 0 0 20px;
  padding: 0;
}
.inner-mid-main:has(#program-banner) h1#startcontent {
  margin: 30px 0 30px 20px;
  padding: 0;
}
h1.main-header {
  font: var(--h1);
  text-transform: capitalize;
  color: var(--heading);
  line-height: 1;
  clear: both;
}
h1.main-header:first-child {
  margin-top: 0 !important;
}
.sidenav-links a[href$=".pdf"] {
  padding-left: 27px;
}
a[href$=".pdf"] {
  background: transparent url(https://www.mchenry.edu/_files/img/icon_pdf.png) no-repeat top left;
  margin-bottom: 18px;
  line-height: 1.5;
  padding-left: 27px;
  background-size: 21px;
  padding-bottom: 3px;
  zoom: 1;
}
/* Suppress automatic PDF icon in side navigation */
.sidenav-links a.no-pdf-icon::after {
  content: none !important;
  display: none !important;
}
.sidenav-links a.no-pdf-icon {
  background-image: none !important;
  padding-left: 12px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  padding-right: 12px !important;
  margin-bottom: 0 !important;
}
.sideman-bg {
  background: var(--purple-tint);
  padding: 20px 6px 5px 30px;
  min-height: 297px;
}
p.adm-content {
  text-transform: uppercase;
  font-size: 1.1em;
  line-height: 20px;
  color: #474747;
  font-weight: 700;
  font-family: var(--font-primary);
}
.left-sidebar .sidenav-bg {
  background: var(--white);
  padding: 0;
}
.left-sidebar h2.sidenav-title {
  color: var(--purple-dark) !important;
  font-family: "Hanken Grotesk", var(--font-primary) !important;
  font-size: 1.5rem !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 130% !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  background-color: var(--white);
  text-transform: capitalize;
  letter-spacing: normal;
}
@media (max-width: 40rem) {
  .left-sidebar h2.sidenav-title {
    padding: 1.5rem 1.5rem 0 0 !important;
  }
}
.sidenav-title {
  color: #280759;
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  margin: 0 0 1.5rem;
  padding: 2rem 2rem 0;
}
@media (max-width: 40rem) {
  .sidenav-title {
    padding: 1.5rem 1.5rem 0;
  }
}
.sidenav-bg__breadcrum {
  font-weight: 600;
  font-style: italic;
  color: var(--purple-dark);
  margin-bottom: 10px;
  line-height: normal;
}
.sidenav-bg__breadcrum a {
  color: var(--purple-dark);
}
.sidenav-bg__breadcrum a:hover,
.sidenav-bg__breadcrum a:focus {
  color: var(--green-primary);
}
.sidenav-links {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 40rem) {
  .sidenav-links {
    margin: 0 1rem;
  }
}
.spotlight-details .pull-quote {
  border-left: 3px solid var(--purple-primary);
  padding: 0 0 0 1.25rem;
  margin: 0 0 1.25rem;
}
.spotlight-details .pull-quote blockquote {
  font: var(--quote);
  color: var(--purple-dark);
  border: none;
  margin: 0 0 0.75rem;
  padding: 0;
}
.spotlight-details .pull-quote cite {
  color: var(--gray-darker);
  font-weight: 700;
  font-size: 0.8125rem;
}
.spotlight-details a.view-more-plain {
  display: inline-block;
  margin-top: 0.5rem;
  font-weight: 600;
  font-size: 0.875rem;
  color: var(--purple-primary);
}
.spotlight-details a.view-more-plain:hover,
.spotlight-details a.view-more-plain:focus {
  color: var(--purple-dark);
  text-decoration: underline;
}
.sidenav-links li {
  display: block;
  padding: 0;
  border-bottom: 1px dashed #cbcffb;
  transition:
    border-color var(--transition-base),
    border-style var(--transition-base);
}
.sidenav-links li:hover {
  border-bottom: 2px solid var(--purple-dark);
  margin-bottom: -1px;
}
.sidenav-links li:last-child {
  border-bottom: 1px dashed #cbcffb;
}
.sidenav-links li:last-child:hover {
  border-bottom: 2px solid var(--purple-dark);
  margin-bottom: -1px;
}

.sidenav-links li .desc {
  padding-bottom: 0.75rem;
  display: block;
}

.sidenav-links a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.75rem 0;
  font-size: 1.2rem;
  /* padding: 0.75rem; */
  color: #280759;
  font-family: "Hanken Grotesk", var(--font-primary);
  /* font-size: 1rem; */
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  text-decoration: none !important;
  transition: color var(--transition-base);
  position: relative;
}
/*
.sidenav-links a.is-visited {
  color: #008386;
}
 .sidenav-links a.is-visited:before {
  @media (min-width: 40rem) {
    content: "";
    position: absolute;
    left: 0;
    top: 25%;
    height: 50%;
    width: 2px;
    background: #008386;
  }
} */
@media (max-width: 40rem) {
  .sidenav-links a {
    /* padding: 1rem 1.5rem 1rem 0; */
    padding: 1rem 0;
  }
}
.sidenav-links a:after {
  content: "";
  display: block;
  width: 0.75rem;
  height: 0.5rem;
  background: #280759;
  mask: url(arrow-down.svg) center / contain no-repeat;
  -webkit-mask: url(arrow-down.svg) center / contain no-repeat;
  flex-shrink: 0;
  transform: rotate(-90deg);
  transition:
    transform var(--transition-base),
    background var(--transition-base),
    filter var(--transition-base);
  margin-left: auto;
  filter: drop-shadow(0 0 0.5px #280759) drop-shadow(0 0 0.5px #280759) drop-shadow(0 0 0.5px #280759)
    drop-shadow(0 0 0.4px #280759) drop-shadow(0 0 0.3px #280759);
}
.sidenav-links li:hover a:after {
  transform: rotate(-90deg) scale(1.3);
  background: var(--purple-dark);
  filter: drop-shadow(0 0 0.5px var(--purple-dark)) drop-shadow(0 0 0.5px var(--purple-dark))
    drop-shadow(0 0 0.5px var(--purple-dark)) drop-shadow(0 0 0.4px var(--purple-dark))
    drop-shadow(0 0 0.3px var(--purple-dark));
}
.sidebar-contact-section {
  background: var(--purple-dark);
  color: var(--white);
  padding: 2.5rem;
  clear: both;
}
* + .sidebar-contact-section {
  margin-top: 2rem;
}
@media (max-width: 40rem) {
  .sidebar-contact-section {
    padding: 2rem 1.5rem;
  }
}
.sidebar-contact-section h2 {
  color: var(--white) !important;
  font-family: "Hanken Grotesk", var(--font-primary) !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  line-height: 130% !important;
  margin: 0 0 2rem !important;
  padding: 0 !important;
}
.sidebar-contact-section h3 {
  color: var(--white);
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 130%;
  margin: 0 0 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.sidebar-contact-section h3 i {
  font-size: 1.25rem;
}
.sidebar-contact-section p {
  color: var(--white);
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1rem;
  line-height: 150%;
  margin: 0 0 0.5rem;
}
.sidebar-contact-section p:last-child {
  margin-bottom: 0;
}
.contact-content {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.contact-hours {
  margin-bottom: 2rem;
}
.contact-info {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 1.25rem;
}
.contact-item {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.contact-item i {
  flex-shrink: 0;
  color: var(--white);
  width: 1.25rem;
  font-size: 1.25rem;
  text-align: center;
}
.contact-item a, .contact-content a{
  color: var(--white);
  text-decoration: none;
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1rem;
  font-weight: 500;
  transition: color var(--transition-base);
}
.contact-item a:hover, .contact-content a:hover {
  color: var(--yellow-primary);
}
.contact-social {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 2rem;
}
.contact-cta {
  margin-top: 0;
  margin-bottom: 0;
  background: var(--yellow-primary);
  color: var(--purple-dark);
  width: 100%;
  text-align: center;
  justify-content: center;
}
.sidebar-events-section {
  background: var(--white);
  padding: 1rem 0;
  margin-top: 2rem;
}
@media (max-width: 40rem) {
  .sidebar-events-section {
    padding: 2rem 1.5rem;
    margin-top: 0;
  }
}
.sidebar-events-section h2 {
  color: var(--purple-dark) !important;
  font-family: "Hanken Grotesk", var(--font-primary) !important;
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  line-height: 130% !important;
  margin: 0 0 2rem !important;
  padding: 0 !important;
}
.events-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}
.event-item {
  display: flex;
  gap: 1rem;
  padding: 1rem;
  text-decoration: none;
  transition: background-color var(--transition);
  border-radius: 0.25rem;
}
@media (max-width: 640px) {
  .event-item {
    flex-direction: column;
    gap: 0.75rem;
  }
}
.event-item:hover {
  background-color: #cbcffb50;
}
.event-date {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 25%;
  min-width: 4.5rem;
  border: 2px solid var(--purple-dark);
  padding: 0.5rem;
  text-align: center;
  transition:
    background-color var(--transition),
    color var(--transition);
}
@media (max-width: 640px) {
  .event-date {
    width: 100%;
    flex-direction: row;
    gap: 0.5rem;
    padding: 0.75rem;
  }
}
.event-item:hover .event-date {
  background-color: #4b3190;
  border: 2px solid transparent;
}
.event-month {
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.3125rem;
  text-transform: uppercase;
  color: var(--purple-dark);
  transition: color var(--transition);
}
.event-item:hover .event-month {
  color: var(--yellow-primary);
}
.event-day {
  font-family: var(--slab);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--purple-dark);
  transition: color var(--transition);
}
.event-item:hover .event-day {
  color: var(--yellow-primary);
}
.event-details {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.event-title {
  color: var(--purple-dark);
  font-family: "Hanken Grotesk", var(--font-primary);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4rem;
  margin: 0;
  position: relative;
}
.event-title span {
  background: linear-gradient(to right, var(--purple-dark), var(--purple-dark)) no-repeat left bottom / 0 0.125rem;
  transition:
    background-size 0.5s ease,
    text-shadow var(--transition);
  padding-bottom: 0.05em;
  font-weight: 400;
}
.event-item:hover .event-title span {
  text-shadow:
    0 0 0.5px var(--purple-dark),
    0 0 0.5px var(--purple-dark);
  background-size: 100% 0.125rem;
  transition:
    background-size 0.5s ease,
    text-shadow var(--transition);
}
.event-time {
  color: var(--gray-text-dark);
  font-family: var(--geist);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2rem;
  margin: 0;
}
.events-cta {
  margin-top: 0;
  margin-bottom: 0;
  padding: 1rem;
  width: 100%;
  text-align: center;
  justify-content: center;
}
.button--purple {
  background-color: var(--purple-dark);
  color: var(--white);
}
.button--purple:hover {
  background-color: var(--purple-primary);
}
.ge .sidenav-links a {
  border-bottom: 0 solid var(--white);
}
.ge .sidenav-links li {
  border-top: 1px solid #ccc;
}
.ge .sidenav-links li:first-child {
  border-top: 0px solid #ccc;
}
.admmision-profiles {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  width: 100%;
  padding: 0;
  padding-right: 1rem;
  margin-left: -20px;
  margin-bottom: 1rem;
}
.admmision-profiles:nth-child(2n) {
  background-color: var(--gray-lighter);
}
.admmision-profiles figure.float-left {
  float: none;
  flex-shrink: 0;
  width: 125px;
  aspect-ratio: unset;
  overflow: hidden;
  margin: 0;
  align-self: stretch;
}
.admmision-profiles figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.admmision-profiles__content {
  flex: 1;
  min-width: 0;
  padding: 1rem 0;
}
.admmision-profiles h3 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
.admmision-profiles p,
.admmision-profiles ul {
  margin: 0;
  line-height: 1.5;
  color: var(--gray-text);
}
.admmision-profiles ul {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 1rem;
  padding-left: 0.5rem;
  padding-top: 0;
}
.admmision-profiles ul li {
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .admmision-profiles {
    padding: 1rem !important;
    margin-left: 0 !important;
  }
  .admmision-profiles figure.float-left {
    width: 120px !important;
    margin-left: -1rem !important;
    margin-top: -1rem !important;
    margin-bottom: -1rem !important;
  }
}

.admmision-profiles.news-listing {
  padding: 0 !important;
  margin: 2rem 0 !important;
  gap: 0 !important;
}

.admmision-profiles.news-listing h2 {
  font: var(--h2half);
}

.admmision-profiles.news-listing .admmision-profiles__content {
  padding: 0 !important;
}
.admmision-profiles.news-listing:nth-child(even) .admmision-profiles__content {
  padding: 1rem !important;
}
.admmision-profiles.news-listing:nth-child(odd) .admmision-profiles__content {
  padding: 0 1rem !important;
}

.admmision-profiles.news-listing figure.float-left {
  width: 30%;
  float: none !important;
}

@media screen and (max-width: 1023px) {
  .admmision-profiles.news-listing {
    flex-direction: column !important;
  }
  .admmision-profiles.news-listing figure.float-left {
    width: 100% !important;
    float: none !important;
  }
  .admmision-profiles.news-listing:nth-child(odd) .admmision-profiles__content {
    padding: 1rem 0 !important;
  }
}

@media screen and (max-width: 784px) {
  .admmision-profiles.news-listing {
    flex-direction: row !important;
  }
  .admmision-profiles.news-listing figure.float-left {
    width: 30% !important;
    float: none !important;
  }
  .admmision-profiles.news-listing:nth-child(odd) .admmision-profiles__content {
    padding: 0 1rem !important;
  }
}

@media screen and (max-width: 767px) {
  .admmision-profiles.news-listing {
    flex-direction: column !important;
  }
  .admmision-profiles.news-listing figure.float-left {
    width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .admmision-profiles.news-listing:nth-child(odd) .admmision-profiles__content {
    padding: 1rem 0 !important;
  }
}

.admmision-profiles.news-listing .admmision-profiles__content h2 {
  margin-top: 0;
}

/* =========================================================================
   COMPONENT: .profile-grid
   Card-grid variant of the spotlight profile listing (used by
   _cms/formats/_refresh/spotlights/home-categories-pages/default.vm for the
   "Spotlight Listing" content row). Deliberately namespaced apart from
   .admmision-profiles above — that class is shared by Profiles Directory.vm,
   alerts/alert-listing.vm, _shared/news.vm, two-column/default.vm and others,
   so this grid treatment can't leak into those unrelated pages.
   Source headshots are 130x160 (4:5 portrait); the avatar crop below is a
   deliberate 1:1 circle (avatar convention reads a tight crop as intentional),
   not the accidental square-stretch the row layout had.
   Column count is driven by a container query on .profile-grid-wrap rather
   than a viewport media query, because the available width here is set by
   the surrounding large-8 / medium-7 / small-12 column, not the viewport
   (same container-type pattern already used by .Header below).
========================================================================= */
.profile-grid-wrap {
  container-type: inline-size;
  container-name: profile-grid;
}
.profile-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem 1rem;
  list-style: none;
  margin: 0 0 1rem;
  padding: 0;
}
@container profile-grid (min-width: 420px) {
  .profile-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@container profile-grid (min-width: 620px) {
  .profile-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.profile-grid__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  background-color: var(--white);
  border: var(--border-width) solid var(--gray-light);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-sm);
  padding: var(--space-6) var(--space-4);
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}
.profile-grid__card:hover,
.profile-grid__card:focus-within {
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(71, 52, 139, 0.16);
}
.profile-grid__avatar {
  flex-shrink: 0;
  width: 84px;
  height: 84px;
  border-radius: var(--border-radius-full);
  overflow: hidden;
  margin: 0 0 var(--space-3);
  border: 3px solid var(--gray-light);
  background-color: var(--gray-light);
}
.profile-grid__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
}
.profile-grid__name {
  margin: 0 0 var(--space-2);
  font: var(--h6);
  font-size: 1rem;
  color: var(--purple-dark);
}
.profile-grid__name a {
  color: inherit;
  text-decoration: none;
}
.profile-grid__name a:hover,
.profile-grid__name a:focus {
  text-decoration: underline;
}
.profile-grid__bio {
  margin: 0;
  color: var(--gray-text);
  font-size: 0.875rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}
@media (prefers-reduced-motion: reduce) {
  .profile-grid__card {
    transition: none;
  }
}

.left-sidebar .upcoming-mcc-sec {
  margin-top: 0;
}
.left-sidebar .events .cal-info h3,
.left-sidebar .events .cal-info h3 a {
  font-size: 1em;
}
.left-sidebar .events .cal-info p {
  font-size: 15px;
  font-size: 1em;
  line-height: 1.5;
}
.left-sidebar .events .cal-info p.ghost {
  font-size: 1.3em;
  line-height: 1.5;
}
.left-sidebar .events .cal-info {
  width: calc(100% - 82px);
}
.left-sidebar .upcoming-mcc-sec h2 {
  font-size: 1.37em;
  line-height: 22px;
  padding: 12px 20px;
}
.left-sidebar .upcoming-mcc-sec h2 a.more {
  font-size: 0.87em;
}
.left-sidebar .notice-section .events .cal-info {
  width: calc(100% + -0px);
}
.left-sidebar .events .cal-info h3.summer {
  font-size: 1.5rem;
}
.left-sidebar .notice-section h3 > span {
  margin-right: 10px;
  display: inline-block;
}
.left-sidebar .recruting-section {
  text-transform: none;
}
.left-sidebar .recruting-section .events .cal-info {
  width: calc(100% + -0px);
}
.left-sidebar .recruting-section .events .cal-info .visit-sec {
  margin-top: 20px;
}
.recruting-section .events .cal-info .visit-sec span {
  float: left;
  margin-right: 16px;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address {
  width: calc(100% - 88px);
  float: left;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .address {
  background: url(https://www.mchenry.edu/_files/img/icon_recruiting_visit.png) no-repeat left;
  height: 40px;
  padding-left: 50px;
  line-height: 30px;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .contact {
  background: url(https://www.mchenry.edu/_files/img/contact.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.cal-info .visit-sec .visit-sec__address .contact {
  background: url(https://www.mchenry.edu/_files/img/contact.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
  font-weight: 700;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .email {
  background: url(https://www.mchenry.edu/_files/img/email.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.cal-info .visit-sec .visit-sec__address .email {
  background: url(https://www.mchenry.edu/_files/img/email.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
  font-weight: 700;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .mobile {
  background: url(https://www.mchenry.edu/_files/img/mobile.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
  font-weight: 700;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .course {
  background: url(https://www.mchenry.edu/_files/img/courses.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.cal-info .visit-sec .visit-sec__address .course {
  background: url(https://www.mchenry.edu/_files/img/courses.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.cal-info .visit-sec .visit-sec__address .hours {
  background: url(https://www.mchenry.edu/_files/img/clock.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .maps {
  background: url(https://www.mchenry.edu/_files/img/map.png) no-repeat left;
  height: 41px;
  padding-left: 40px;
  line-height: 41px;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address .fax {
  background: url(https://www.mchenry.edu/_files/img/fax.png) no-repeat left;
  height: 41px;
  padding-left: 50px;
  line-height: 41px;
}
.recruting-section .events .cal-info .visit-sec .visit-sec__address p {
  font-weight: 700;
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 20px;
}
.recruting-section .events .cal-info a {
  color: #5639a4;
}
.recruting-section .events .cal-info a:hover,
.recruting-section .events .cal-info a:focus {
  color: var(--green-primary);
}
.recruting-section .events .cal-info a:after {
  content: "";
}
.recruting-section .events .cal-info a.button {
  color: var(--white);
  font-weight: 600;
}
.help-block {
  background-color: var(--purple-tint);
  padding: 20px 30px 10px;
  margin-top: 25px;
  margin-bottom: 15px;
}
.help-block__title {
  background: url(https://www.mchenry.edu/_files/img/icon_help_block.png) no-repeat 0px 0px;
  color: var(--purple-primary);
  font-weight: 700;
  font-style: italic;
  font-size: 1.75em;
  padding: 24px 24px 24px 145px;
  text-transform: uppercase;
}
.help-block__link {
  font-size: 1em;
  margin-top: 20px;
  margin-left: 50px;
  list-style: none;
}
.help-block__link a {
  color: var(--purple-primary);
  opacity: 0.9;
  padding-left: 28px;
  margin-bottom: 2px;
  display: block;
}
.help-block__link a:hover {
  opacity: 1;
}
.help-block .cal-info {
  width: calc(100% - 88px);
  float: left;
}
.help-block .cal-info .address {
  background: url(https://www.mchenry.edu/_files/img/icon_recruiting_visit.png) no-repeat left;
  height: 40px;
  padding-left: 55px;
  line-height: 30px;
}
.cal-info .address {
  background: url(https://www.mchenry.edu/_files/img/icon_recruiting_visit.png) no-repeat left;
  font-weight: 700;
  height: 40px;
  padding-left: 55px;
  line-height: 30px;
  margin-top: 0.25em;
}
.help-block .cal-info .contact {
  background: url(https://www.mchenry.edu/_files/img/contact.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.cal-info .contact {
  background: url(https://www.mchenry.edu/_files/img/contact.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.help-block .cal-info .email {
  background: url(https://www.mchenry.edu/_files/img/email.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.cal-info .email {
  background: url(https://www.mchenry.edu/_files/img/email.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.cal-info .mobile {
  background: url(https://www.mchenry.edu/_files/img/mobile.png) no-repeat left;
  font-weight: 700;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.help-block .cal-info .course {
  background: url(https://www.mchenry.edu/_files/img/courses.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.cal-info .course {
  background: url(https://www.mchenry.edu/_files/img/courses.png) no-repeat left;
  height: 41px;
  padding-left: 55px;
  line-height: 41px;
}
.help-block .cal-info p {
  font-weight: 700;
  font-size: 1em;
  margin-bottom: 12px;
}
.help-block .cal-info a {
  word-break: break-all;
}
.academic-calender {
  padding: 0 15px;
  line-height: normal;
  font-weight: 700;
}
.academic-calender > div {
  padding-top: 10px;
}
.academic-calender span {
  margin-right: 15px;
}
.admissions-menu-sec {
  display: none;
}
.disabled {
  pointer-events: none;
  cursor: default;
  opacity: 0.6;
}
#program-sidebar {
  min-height: 424px;
  padding-top: 50px;
}
ul.arrow-links {
  margin-left: 12px;
}
ul.arrow-links li {
  list-style: none;
}
ul.arrow-links li a {
  background: url(https://www.mchenry.edu/_files/img/icon_rounded_arrow.png) no-repeat 0 5px;
  padding-left: 24px;
  display: inline-block;
  font-weight: 700;
}
.ge table {
  width: 100%;
}
.ge table thead tr {
  background-color: var(--white);
}
.ge table tfoot tr {
  background-color: #f1f1f1;
}
.ge table thead,
.ge table tbody,
.ge table tfoot {
  border: none;
}
.ge table tbody th,
.ge table tbody td {
  padding: 4px 15px;
  text-align: left;
}
.ge .table-heading {
  background: var(--purple-tint);
  color: var(--purple-primary);
  font-weight: 700;
  padding: 6px 15px;
  font-size: 1.25em;
}
.ge__content {
  padding: 10px 20px 0;
}
.ge__content p {
  line-height: normal;
  color: var(--gray-text-dark);
  font-size: 1em;
}
.cost {
  padding: 0 5px;
}
.cost h4 {
  color: var(--purple-primary);
  font-size: 1.37em;
  font-weight: 700;
  text-transform: capitalize;
  margin: 0 0 20px;
}
.cost p {
  font-weight: 700;
  /* font-size: 1.37em; */
  line-height: normal;
  margin-bottom: 8px;
}
.cost__degree a {
  font-size: 1.25em;
}
.degree {
  background: url(https://www.mchenry.edu/_files/img/icon_pdf.png) no-repeat;
  padding-left: 35px;
  display: inline-block;
}
.disclosure {
  background: url(https://www.mchenry.edu/_files/img/icon_rounded_arrow.png) no-repeat 0 7px;
  padding-left: 24px;
  display: inline-block;
  margin-left: 11px;
}
.cost__degree .divider {
  height: 3px;
  background-color: var(--purple-dark);
  margin: 8px 0;
}
.programs {
  padding: 0 15px;
  margin-top: 30px;
}
.programs p {
  color: var(--gray-text-dark);
  line-height: normal;
}
.getting,
.career {
  margin-top: 30px;
}
.career h4 {
  padding: 2px 15px;
  margin-top: 11px;
}
.text-bold {
  font-weight: 700;
}
.opportunity {
  margin-top: 20px;
  padding: 0 15px;
}
.opportunity h4 {
  margin-bottom: 0;
}
.opportunity p {
  color: var(--gray-text-dark);
  line-height: normal;
}
.fast-track {
  margin-top: 40px;
}
.fast-track p {
  color: var(--gray-text-dark);
  line-height: normal;
  padding: 0 15px;
}
.fast-track table tbody th {
  background: var(--purple-tint);
  color: var(--purple-primary);
  font-weight: 700;
  padding: 6px 15px;
  font-size: 1.25em;
  text-align: left;
}
.fast-track table tbody tr:nth-child(odd) {
  background-color: #f1f1f1;
}
.fast-track table tbody tr:nth-child(2n) {
  background-color: var(--white);
}
.online {
  margin-top: 20px;
}
.online h2 {
  margin-bottom: 15px;
}
.online p {
  color: var(--gray-text-dark);
  line-height: normal;
  padding: 0 15px;
}
.online ul {
  margin-left: 50px;
}
.online ul li {
  color: var(--gray-text-dark);
  line-height: normal;
}
.help {
  margin-top: 30px;
}
.help .help-block {
  margin-top: 10px;
  padding: 20px 20px 10px;
}
.help__list {
  margin-left: 50px;
  margin-top: 20px;
}
.help .help-block__link {
  margin-top: 0;
  margin-left: 20px;
  font-weight: 700;
}
.help .help__list h4 {
  margin-bottom: 5px;
  margin-top: 20px;
}
.help .help-block__link a {
  line-height: normal;
}
.skills {
  margin-top: 20px;
}
.skills h5 {
  color: var(--purple-primary);
  font-size: 1.25em;
  font-weight: 700;
}
.skills p {
  padding: 0 15px;
}
.font-bold {
  font-weight: 700;
}
.skills__info {
  border-top: 1px solid #ccc;
  padding-top: 20px;
  margin-top: 10px;
}
.skills__info p {
  padding: 0;
  color: var(--gray-text-dark);
  line-height: normal;
}
.m-b-20 {
  margin-bottom: 20px !important;
}
.ge caption {
  background: var(--purple-tint);
  text-align: left;
  color: var(--purple-primary);
  font-weight: 700;
  padding: 6px 15px;
  font-size: 20px;
  font-size: 1.25em;
}
.degreeinfo p {
  margin: 10px 0;
}
.degreeinfo a.button {
  width: 100%;
  font-weight: 600;
}
.outlook {
  border-left: 0px solid #ccc;
}
.outlook h2 {
  background-color: #7c69b0;
  color: #fff;
  font-size: 1.37em;
  font-weight: 700;
  padding: 5px 15px;
  text-transform: uppercase;
  margin-top: 0;
}
#cc-widget-careers .cc-card .sc-bdVaJa .iETYas {
  box-shadow: #52617333 0 0;
  height: 350px;
  width: 320px;
}
#cc-widget-careers .cc-card .sc-bdVaJa .iETYas {
  height: 300px;
  padding: 0;
}
#cc-widget-careers .iRoJrB {
  margin-top: -20px;
}
#cc-widget-careers .hbMPRg {
  margin-top: 50px;
}
#cc-widget-careers .buBeEl {
  font-size: 1rem;
  margin-top: -10px;
}
#cc-widget-careers .bEHACH {
  font-size: 1.15rem;
  min-height: 132px;
  margin-top: 0;
  margin-bottom: 0;
}
#cc-widget-careers .ImFjv {
  font-size: 2.25rem;
  color: #2e6ad1;
  margin-bottom: 20px;
}
.erzrIg,
.fMvcfM {
  display: none;
}
.iETYas {
  box-shadow: none;
}
.sc-EHOje.cc-content-salary.ImFjv {
  color: var(--purple-primary);
}
.cc-card.sc-bdVaJa.iETYas {
  box-shadow: none;
  height: 350px;
}
a.sc-bZQynM.cc-content-link.lipGXP.Button-kDSBcD.jrzZKG {
  background-color: var(--purple-primary);
  font-weight: 600;
}
a.sc-bZQynM.cc-content-link.lipGXP.Button-kDSBcD.jrzZKG:hover {
  background-color: #00b0c7;
  font-weight: 600;
  color: var(--white);
}
h1.home-h1 {
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.onecol {
  padding: 0;
  position: relative;
}
.onecol .overlay-text {
  left: 0;
  top: 0;
  bottom: 0;
  color: var(--white);
  position: absolute;
  height: 100%;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 0 15px;
  text-align: center;
}
.onecol .overlay-text section {
  background: #00000080;
  padding: 20px;
}
.onecol .overlay-text h2 {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 3.12em;
  color: var(--white);
  width: 100%;
  text-align: left;
  float: left;
}
.onecol .overlay-text p {
  display: block;
  width: 80%;
  text-align: left;
}
.onecol.overlay-text a {
  text-align: left;
  font-size: 1em;
  float: left;
  color: var(--white);
}
.onecol .overlay-text a:hover {
  text-decoration: underline;
}
.onecol .workforce__banner {
  margin: 0;
  background: url(https://www.mchenry.edu/_files/img/banner/bg_workforce.jpg) no-repeat;
  background-size: cover;
  height: 340px;
  background-position: center right;
}
.onecol-content {
  margin-bottom: 30px;
}

.onecol-content > h1 {
  line-height: 1.2;
  margin: 16px 0 10px;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.onecol-content p {
  color: #000000e6;
  /* font-size: 1.3em; */
}
.onecol-content article > section > p {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
.onecol-content a.register {
  color: var(--purple-primary);
  font-size: 1.25em;
  font-weight: 700;
}
.onecol-registration .columns {
  padding: 20px 15px 10px;
}
.onecol-registration .columns:nth-of-type(odd) {
  background-color: var(--gray-lighter);
}
.onecol-registration h2 {
  color: #000000d9;
  font-size: 1.25em;
  font-weight: 700;
  text-align: center;
  line-height: 20px;
  margin-bottom: 30px;
  min-height: 40px;
}
.onecol-registration .wf-course-pdf:hover {
  color: #4e3593;
}
.onecol-registration .columns ul {
  margin: 0;
  list-style: none;
}
.onecol-registration .columns ul li a {
  font-size: 1em;
  font-weight: 700;
  margin-bottom: 24px;
  display: block;
  line-height: normal;
  background: url(https://www.mchenry.edu/_files/img/icon_rounded_arrow.png) no-repeat 0 2px;
  padding-left: 25px;
}
.onecol-registration .columns ul li a:hover {
  color: #4e3593;
}
.extra {
  background-color: var(--purple-tint);
  margin: 20px 0;
  padding: 30px 10px 10px;
  font-size: 0.87em;
}
.extra a {
  color: var(--purple-primary);
  font-weight: 700;
  display: block;
  margin-bottom: 8px;
  font-size: 1.12em;
}
.extra p {
  line-height: normal;
  color: var(--gray-text-dark);
  font-size: 1em;
}
.directory .columns:nth-of-type(odd) {
  background-color: var(--gray-lighter);
}
.directory h2 {
  text-align: center;
  font-size: 1.37em;
  font-weight: 700;
  margin-top: 16px;
  position: relative;
  z-index: 3;
  text-transform: uppercase;
}
.directory h2 span {
  color: #000000d9;
  position: relative;
  background: #ebebeb;
  display: inline-block;
  padding: 0 5px;
}
.directory h2 span:after {
  position: absolute;
  top: 13px;
  height: 3px;
  background: #000000d9;
  content: "";
  left: -7px;
  right: -7px;
  z-index: -1;
}
.directory .columns:nth-child(2) h2 span {
  background: var(--white);
}
.directory .columns > ul > li {
  list-style: none;
}
.directory .columns > ul li {
  line-height: 30px;
}
.directory li a,
.directory li {
  font-size: 1.04em;
  line-height: 30px;
}
.directory li a:hover,
.directory li a:focus {
  text-decoration: underline;
}
.directory .columns > ul li > ul {
  margin-left: 30px;
}
.directory .columns > ul li > ul li {
  text-indent: 0;
  padding-left: 0;
}
.community-link {
  padding-top: 15px;
  padding-bottom: 10px;
  font-size: 1.04em;
}
.link-heading {
  color: var(--purple-primary);
  font-size: 1.12em;
  font-weight: 700;
  padding-left: 15px;
  margin-bottom: 16px;
}
.extra .column {
  margin-bottom: 10px;
}
.extra .column a {
  line-height: normal;
  font-weight: 500;
  margin-bottom: 2px;
  font-size: 1.04em;
}
.extra .column a:hover,
.extra.column a:focus {
  text-decoration: underline;
}
.relative-position {
  position: relative;
}
.admissions-wrapper {
  padding-top: 15px;
  margin-top: 0;
}
p.info {
  background-color: var(--white);
  padding: 15px;
  border: 1px solid #999;
}
.back-to-top {
  position: fixed;
  bottom: 2em;
  right: 0;
  text-decoration: none;
  color: #fdbb30;
  background-color: #4b3190cc;
  font-size: 12px;
  padding: 1em;
  display: none;
}
.back-to-top:hover {
  background-color: #fdbb3080;
  color: var(--purple-primary);
}
ul.accordion {
  margin-top: 30px;
  margin-bottom: 30px;
  margin-left: 0;
  padding-left: 0;
  display: flex;
  flex-direction: column;
}
ul.accordion-item {
  display: flex;
  flex-direction: column;
}
.accordion-title {
  color: var(--purple-primary);
  font-size: 1.2rem;
  font-weight: 500;
  border: 1px solid var(--purple-primary);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
}
:last-child:not(.is-active) > .accordion-title {
  border-radius: 0 0 3px 3px;
  border-bottom: 1px solid var(--purple-primary);
}
.accordion-title:hover,
.accordion-title:focus {
  background-color: #edeaf4;
  color: #477029;
}
/* Scoped styles for dual-accordion layout */
.dual-accordions .accordion-title {
  min-height: 5rem;
}
.event {
  padding: 1rem 0.2rem 1rem 0.9rem;
  display: table;
  border-top: 1px solid #ccc;
}
.callout.full {
  padding: 0;
}
.callout.full h2,
.callout .full p,
.callout.full ul {
  margin: 10px 0 10px 10px;
}
.callout h2 {
  font-size: 2rem;
}
h2#collegefairs {
  font-size: 2.5rem;
}
.callout.fair {
  background-color: var(--purple-tint);
  border-left: 14px solid var(--white);
  border-right: 14px solid var(--white);
  border-top: 0px solid var(--white);
  border-bottom: 0px solid var(--white);
}
.callout.fair h2 {
  color: #7662ab;
  margin: 0;
  padding: 15px;
  text-align: center;
}
.callout.fair ul li {
  list-style: none;
  background: url(https://www.mchenry.edu/images/bulletp.png) no-repeat 0 7px;
  color: var(--purple-primary);
  display: block;
  margin-bottom: 2px;
  opacity: 0.9;
  padding-left: 15px;
  color: var(--gray-text);
}
.grybk {
  background-color: #f5f5f5;
}
ul.rlinks {
  margin: 50px 0 50px 10px;
}
ul.rlinks li {
  margin: 1rem 0;
  padding-left: 20px;
  font-size: 1rem;
  list-style: none;
  border-bottom: 1px dashed #ccc;
  background-image: url(https://www.mchenry.edu/_files/img/glrgarrow.png);
  background-position: left center;
  background-repeat: no-repeat;
}
.ficon {
  text-align: center;
  font-size: 5rem;
  color: #7662ab;
}
.tabs .tab-title > a:hover {
  background-color: #dbd6e9;
}
.tabs-title > a:focus,
.tabs-title > a[aria-selected="true"] {
  background: #dbd6e9;
  color: var(--purple-primary);
}
.mid-main ul li.tabs-title {
  margin-left: 0;
}
.mid-main ul#tablist.tabs {
  margin-left: 0;
  padding-left: 0;
}
.checklist ol {
  display: block;
  list-style: none;
  overflow: hidden;
  counter-reset: numList;
}
.checklist ol li {
  font-size: 1.4rem;
  margin-left: 15px;
  position: relative;
  margin-bottom: 10px;
}
.checklist ol li span {
  font-size: 1.4rem;
  color: var(--gray-text);
}
.checklist ol li ul li {
  font-size: 1rem;
  color: var(--gray-text);
  list-style: circle;
  margin-left: 0.1rem;
}
.checklist ul.nest li {
  font-size: 1rem;
  list-style: none;
}
.checklist ol > li {
  position: relative;
  margin: 0 0 30px 2em;
  padding: 15px 8px;
  list-style: none;
  border-top: 2px solid #bbb;
}
.checklist ol > li:before {
  counter-increment: numList;
  content: counter(numList);
  position: absolute;
  top: -2px;
  left: -2em;
  width: 2em;
  margin-right: 8px;
  padding: 4px;
  color: var(--white);
  background: var(--green-primary);
  font-weight: 700;
  text-align: center;
}
.checklist li ol,
.checklist li ul {
  margin-top: 6px;
}
.checklist ol ol li:last-child {
  margin-bottom: 0;
}
ul.checkmark {
  list-style-type: none;
  font-size: 1.25rem;
  font-weight: 500;
}
ul.checkmark li:before {
  content: "✓ ";
}
* {
  box-sizing: border-box;
}
.gallery .columns {
  margin-bottom: 15px;
}
.row:after {
  content: "";
  display: table;
  clear: both;
}
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: #000;
}
.modal-content {
  position: relative;
  background-color: #fefefe;
  margin: auto;
  padding: 0;
  width: 90%;
  max-width: 900px;
}
.close {
  color: #fff;
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 35px;
  font-weight: 700;
}
.close:hover,
.close:focus {
  color: #999;
  text-decoration: none;
  cursor: pointer;
}
.mySlides {
  display: none;
}
.cursor {
  cursor: pointer;
}
.prev,
.next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  padding: 16px;
  margin-top: -50px;
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
}
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}
.prev:hover,
.next:hover {
  background-color: #000c;
}
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}
img {
  margin-bottom: -4px;
}
.caption-container {
  text-align: center;
  background-color: #000;
  padding: 2px 16px;
  color: #fff;
}
.demo {
  opacity: 0.6;
}
.active,
.demo:hover {
  opacity: 1;
}
img.hover-shadow {
  transition: 0.3s;
}
.hover-shadow:hover {
  box-shadow:
    0 4px 8px #0003,
    0 6px 20px #00000030;
}
.tquote {
  background: #e1dcec;
  background-image: url(../../accuplacer/images/testing.png);
  background-position: bottom;
  background-repeat: no-repeat;
  padding: 20px 0 50px;
  color: #111;
}
.tquote blockquote {
  font-size: 1.3rem;
  color: var(--gray-text-dark);
}
.red {
  color: #c00;
}
.left {
  float: left;
}
.right {
  float: right;
}
.ochecklist {
  background: url(https://www.mchenry.edu/_files/img/icon/global/checklist-w.png);
  background-color: #fdbb30;
  height: 225px;
  background-position: bottom right;
  background-repeat: no-repeat;
  color: var(--white);
  font-size: 1.9rem;
  font-weight: 800;
}
.register {
  background: url(https://www.mchenry.edu/_files/img/icon/global/register-fall.png);
  height: 225px;
  background-position: bottom right;
  background-color: var(--green-primary);
  background-repeat: no-repeat;
  color: var(--white);
  font-size: 1.9rem;
  font-weight: 800;
}
.emailupdate {
  background: url(https://www.mchenry.edu/_files/img/icon/global/email-updates-g.png);
  height: 225px;
  background-color: var(--purple-primary);
  background-position: bottom right;
  background-repeat: no-repeat;
  color: var(--white);
  font-size: 1.9rem;
  font-weight: 800;
}
.gbx {
  background-color: #fdbb30;
  padding-bottom: 15px;
  text-align: left;
}
.gbx h2 {
  background-color: var(--purple-primary);
  padding: 20px;
  font-size: 1.8rem;
}
.gbx h2 span {
  font-size: 4rem;
  float: left;
  margin-right: 10px;
}
.gbx p {
  color: var(--purple-primary);
  font-style: italic;
  font-weight: 600;
  font-size: 1.5rem;
  margin-left: 30px;
}
.tabs-title > a {
  font-size: 1rem;
}
.flex-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  padding-top: 0;
  margin-bottom: 0;
}
.ge p {
  color: var(--gray-text);
  /* font-size: 1.25rem; */
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  line-height: 1.6;
}
.degreeinfo p {
  margin: 10px 0 10px 10px;
}
.ge ul,
.ge ol {
  /* font-size: 1.15rem; */
}
.schedules h2.special {
  background-color: #fdbb30;
  color: var(--purple-primary);
  padding: 10px;
}
.schedules h3 {
  border-bottom: 3px solid #7662ab;
  padding: 0;
  font-size: 1.5rem;
}
.schedules ul {
  margin-left: 0;
  padding-left: 0;
}
.schedules ul li {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
.ghost {
  margin-top: 20px;
  padding: 10px;
  border: 4px solid var(--purple-primary);
  font-weight: 600;
}
.lbrdr {
  border-left: 1px solid #ccc;
}
.rbrdr {
  border-right: 1px solid #ccc;
}
.givebutton {
  width: 100%;
  margin-bottom: 20px;
  text-align: right;
}
.accordion-title:before {
  font-weight: 600;
}
abbr[title] {
  position: relative;
  text-decoration: underline dotted;
}
abbr[title]:hover:after,
abbr[title]:focus:after {
  content: attr(title);
  position: absolute;
  left: 0;
  bottom: -30px;
  width: auto;
  white-space: nowrap;
  background-color: #1e1e1e;
  color: var(--white);
  border-radius: 3px;
  box-shadow: 1px 1px 5px #0006;
  font-size: 14px;
  padding: 3px 5px;
}
.cookie-banner {
  position: fixed;
  bottom: 40px;
  left: 10%;
  right: 10%;
  width: 80%;
  padding: 5px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #eee;
  border-radius: 5px;
  box-shadow: 0 0 2px 1px #0003;
}
.close {
  height: 20px;
  background-color: #777;
  border: none;
  color: #fff;
  border-radius: 2px;
  cursor: pointer;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
  color: #000 !important;
  background-color: #fff !important;
}
[data-hide-until],
[data-remove-until],
[data-show-until],
[data-hide-after],
[data-remove-after],
[data-show-after] {
  display: none;
}
p.pdisc {
  font-size: 1.035rem;
}
.disclaimer p {
  font-size: 1.118rem;
  margin-top: 10px;
  margin-bottom: 10px;
  line-height: 1.5;
}
.goog-te-gadget-simple .goog-te-menu-value span {
  color: #000;
}
#google_translate_element {
  margin: 2px 0 0 3px;
}
.goog-te-gadget-simple {
  padding-bottom: 7px;
}
ul.menu li.goldbutton {
  margin: 2px 0 3px 10px;
}
ul.menu li.goldbutton a {
  background-color: #fdbb30;
  color: var(--purple-primary);
  font-weight: 700;
  padding: 8px 10px;
  border-radius: 15px;
}
ul.menu li.goldbutton a:hover {
  color: var(--white);
  background-color: #fdbb30;
  padding: 8px 10px;
}
ul.menu li.goldbutton i.fi-magnifying-glass {
  font-size: 1rem;
}
iframe {
  border: none !important;
  padding: unset !important;
}
.questions {
  width: 100%;
  border-top: 3px solid var(--purple-primary);
  text-align: center;
  margin-top: 15px;
  padding-top: 20px;
}
.questions a {
  text-decoration: underline;
}
.num-content-wrapper {
  animation-delay: 1s;
  animation-duration: 3s;
  animation-name: slidein;
}
@keyframes slidein {
  0% {
    margin-left: 100%;
    width: 300%;
  }
  to {
    margin-left: 0%;
    width: 100%;
  }
}
.no-js & ul {
  display: none;
}
.large {
  font-size: 2.5rem;
}
.medium {
  font-size: 2rem;
}
.small {
  font-size: 1.5rem;
}
@media screen and (max-width: 500px) {
  .onecol .workforce__banner {
    height: 125px;
  }
}
@media screen and (min-width: 501px) and (max-width: 700px) {
  .onecol .workforce__banner {
    height: 175px;
  }
}
@media screen and (min-width: 701px) and (max-width: 959px) {
  .onecol .workforce__banner {
    height: 200px;
  }
}
@media screen and (min-width: 960px) {
  .onecol .workforce__banner {
    height: 349px;
  }
}
@media screen and (max-width: 1024px) and (orientation: portrait) {
  .nav-container .content-area p {
    display: none;
  }
}
@media (max-width: 1240px) {
  .footer-wrapper {
    padding-left: 15px;
    padding-right: 15px;
  }
  .admmision-profiles {
    padding-bottom: 10px;
  }
}
@media (min-width: 1210px) {
  .orbit-caption {
    left: auto;
    margin: 0 auto;
    padding-left: 30px;
    width: 100%;
  }
}
@media (min-width: 1023px) {
  .admissions-burgermenu span {
    display: none;
  }
  .logo a img {
    width: 70%;
  }
}
@media (min-width: 40.063em) {
  .inner-mid-main .mid-main figure.abio {
    width: 200px;
    float: left;
    margin-right: 1.2em;
    padding-right: 15px;
    border-right: 4px solid #dedede;
  }
}
@media (min-width: 1024px) {
  .left-sidebar .recruting-section .wth {
    width: 90%;
  }
  footer .footer-nav:nth-child(n + 4) {
    text-align: left;
  }
  footer .footer-nav .footer-nav-links {
    display: block !important;
  }
  footer .footer-nav h2 {
    pointer-events: none;
    cursor: default;
  }
}
@media (max-width: 1023px) {
  .footer-logo a {
    margin-top: 0;
    height: 150px;
  }
  .footer-logo a img {
    height: 150px;
    width: auto;
  }
  footer .footer-nav {
    text-align: center;
  }
  .info-block-main div.columns:first-child {
    padding-left: 10px;
  }
  .info-block-main div.columns:last-child {
    padding-right: 10px;
  }
  footer .footer-nav,
  .footer-logo {
    margin-top: 14px;
  }
  footer .footer-nav .footer-nav-links {
    display: none;
  }
  footer .footer-nav h2 {
    position: relative;
    display: inline-block;
    padding-left: 37px;
    width: 300px;
    text-align: left;
  }
  footer .footer-nav h2:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 26px;
    height: 4px;
    background: var(--white);
    top: 6px;
    left: 0;
    box-shadow:
      0 7px 0 var(--white),
      0 14px 0 var(--white);
    border-radius: 3px;
  }
  footer .footer-nav ul {
    width: 294px;
    text-align: left;
    display: inline-block;
    padding-left: 36px;
  }
}
@media (max-width: 800px) {
  .inner-mid-main .mid-main,
  .inner-mid-main .left-sidebar {
    width: 100%;
  }
  .left-sidebar {
    position: fixed;
    top: 0;
    z-index: 999;
    bottom: 0;
    overflow-y: auto;
    background: var(--white);
    width: 250px !important;
    left: -250px;
  }
  .left-adm-active {
    padding-left: 250px;
    overflow-x: hidden;
  }
  .left-adm-active .left-sidebar {
    left: 0;
    padding: 0;
    box-sizing: border-box;
    overflow-x: hidden;
  }
  body.left-adm-active .wrapper-main {
    margin-right: -250px;
  }
  .admissions-menu-sec {
    display: inline-block;
    margin: 0 0 15px;
  }
  .admissions-burgermenu {
    display: inline-block;
    position: relative;
    padding-left: 38px;
    margin: 0 0 15px 20px;
    z-index: 9;
  }
  .admissions-burgermenu span {
    text-transform: uppercase;
    font-weight: 600;
  }
  .admissions-menu-sec span {
    display: inline-block;
  }
  .admissions-burgermenu:after {
    content: "";
    position: absolute;
    display: block;
    width: 26px;
    height: 4px;
    background: var(--purple-primary);
    top: 4px;
    left: 0;
    box-shadow:
      0 7px 0 var(--purple-primary),
      0 14px 0 var(--purple-primary);
    border-radius: 3px;
  }
  .recruting-section .events .cal-info .visit-sec .visit-sec__address {
    width: calc(100% + -0px);
  }
  .left-sidebar .events .date-sec p {
    font-size: 1.62em;
  }
  .left-sidebar .events .date-sec span {
    font-size: 0.87em;
  }
}
@media (min-width: 991px) and (max-width: 1199px) {
  .orbit-caption {
    padding-right: 100px;
  }
}
@media (min-width: 859px) and (max-width: 990px) {
  .orbit-caption {
    padding-right: 100px;
    font-size: 2.31em;
  }
}
@media (min-width: 720px) and (max-width: 858px) {
  .orbit-caption {
    padding-right: 350px;
    font-size: 2.31em;
  }
}
@media (min-width: 320px) and (max-width: 719px) {
  .orbit-caption {
    padding-right: 30%;
    font-size: 2.31em;
  }
  .directory li a,
  .directory li {
    font-size: 1.25em;
    line-height: 35px;
  }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .footer-nav:nth-child(2n) {
    clear: left;
  }
}
@media (max-width: 1300px) {
  .num-content-wrapper ul li h5 {
    font-size: 2.18em;
  }
}
@media (max-width: 1240px) {
  .info-block-main div a span {
    font-size: 1.12em;
    padding-left: 10px;
    padding-right: 10px;
  }
  .info-block-main,
  .upcoming-mcc-section,
  .mcc-by-num,
  .life-at,
  .stats-spotlight-section,
  .upcoming-events-full,
  .spotlights-container {
    padding-left: 15px;
    padding-right: 15px;
  }
  .num-content-wrapper ul li p {
    font-size: 0.75em;
  }
  .info-block-main div.columns {
    padding: 10px;
  }
}
@media (min-width: 1022px) {
  .top-bar > .row {
    padding-right: 200px;
  }
}
@media (min-width: 992px) and (max-width: 1400px) {
  .top-bar ul.menu > li > a {
    padding: 10px 4px;
  }
  ul.menu li.goldbutton a {
    padding: 8px 4px;
  }
  .search-top {
    width: 150px;
  }
  .top-bar > .row {
    padding-right: 170px;
  }
}
@media (max-width: 991px) {
  .upcoming-mcc-sec h2,
  .mcc-numbers h2 {
    font-size: 1.06em;
  }
  .mcc-numbers h2 a.more,
  .upcoming-mcc-sec h2 a.more {
    font-size: 0.87em;
  }
  .num-notice p {
    margin-top: 0;
  }
  .num-content-wrapper ul {
    text-align: center;
  }
  .num-content-wrapper ul li {
    width: 30%;
    float: none;
    margin-bottom: 20px;
    display: inline-block;
  }
  .num-content-wrapper ul li p {
    font-size: 1em;
    margin-top: 10px;
  }
}
@media (max-width: 40em) {
  .info-block-main {
    margin-top: 30px;
    margin-bottom: 30px;
    padding-left: 0;
    padding-right: 0;
  }
  .spotlight {
    margin-top: 0;
  }
  .bottom-links-wrapper ul li {
    width: 100%;
    text-align: center;
    margin: 0 0 10px;
  }
  .bottom-links-wrapper ul li:nth-child(2n + 2) {
    display: none;
    margin: 0;
  }
  .info-block-main div.columns:last-child,
  .info-block-main div.columns:first-child,
  .info-block-main div.columns {
    padding-left: 0;
    padding-right: 0;
  }
  .spotlight-area ul li {
    width: 49%;
  }
  footer .footer-nav:nth-child(3n + 2) {
    text-align: center;
  }
  footer .footer-nav {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .ge h3 {
    font-size: 1.5em;
  }
  .directory .columns > ul li a {
    font-size: 1em;
  }
  .onecol-content p,
  .onecol-content > h1 {
    padding-right: 40px;
  }
  .orbit-caption {
    padding-right: 12%;
  }
  .video-sec {
    text-align: center;
  }
  .video-sec h2 {
    width: 100%;
    float: left;
    font-size: 1.62em;
    text-align: center;
  }
  .video-sec h3 {
    font-size: 0.93em;
    text-align: center;
  }
  .video-sec p {
    text-align: center;
    padding-right: 0;
  }
  .video-sec a.play-btn {
    position: static;
    display: inline-block;
    margin-top: 20px;
  }
  .video-sec {
    background-position: 95% 95%;
    padding-left: 15px;
  }
  .play-btn {
    top: 75%;
  }
  .profile-pic {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
    margin-top: 30px;
    position: static;
  }
  .help-block__title {
    background-size: 68px;
    font-size: 1.12em;
    padding: 66px 14px 14px 15px;
    background-position: center top;
  }
  .help__list {
    margin-left: 0;
    padding: 0 15px 15px;
    margin-top: 0;
  }
  .help-block__link {
    margin-left: 20px;
    font-size: 1.12em;
  }
  .help-block__link a {
    background-size: 10px;
    padding-left: 22px;
  }
  .admmision-profiles {
    align-items: stretch;
    text-align: left;
    padding: 0;
    padding-right: 1rem;
    margin-left: -20px;
    margin-bottom: 1rem;
  }
  .admmision-profiles figure.float-left {
    width: 120px;
    height: auto;
    aspect-ratio: unset;
    align-self: stretch;
  }
  .admmision-profiles figure img {
    height: 100%;
  }
  .admmision-profiles__content {
    float: none;
    width: calc(100% + -0px);
    padding: 1rem 0;
  }
  .left-sidebar .upcoming-mcc-sec h2 {
    padding: 12px 8px;
    font-size: 1em;
  }
  .cost p {
    font-size: 1.25em;
  }
  .cost__degree a {
    font-size: 1.12em;
    line-height: normal;
  }
  .mid-main figure.main-banner {
    margin: 0 -20px;
  }
  .mcc-numbers,
  .num-notice {
    width: 100%;
  }
  .social-sec {
    display: none;
  }
}
@media (max-width: 640px) {
  .onecol-registration .columns,
  .directory .columns {
    height: auto !important;
  }
  .footer-wrapper {
    position: relative;
    padding-bottom: 20px;
  }
  .footer-wrapper .social-wrapper {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9;
  }
  .footer-wrapper .social-wrapper .social-icons {
    margin-top: 0;
  }
  .num-content-wrapper ul li {
    width: 50%;
  }
  .lbrdr {
    border-left: 0px solid #ccc;
  }
  .rbrdr {
    border-right: 0px solid #ccc;
  }
}
@media (max-width: 500px) {
  .search-top {
    left: auto !important;
    right: 0 !important;
  }
  .orbit-caption a {
    font-size: 1.25em;
  }
  .orbit-caption {
    line-height: 30px;
  }
  .num-content-wrapper ul li {
    width: 100%;
  }
  .spotlight-area ul li a {
    font-size: 1.12em;
  }
}
@media (max-width: 400px) {
  .footer-wrapper .social-wrapper .social-icons {
    display: table;
  }
  .social-icons li {
    display: table-cell;
  }
  .social-icons li a {
    margin: 0 1px;
  }
  .social-icons li a img {
    width: 100%;
  }
}
@media (min-width: 860px) and (max-width: 991px) {
  .top-bar ul.menu > li > a {
    font-size: 0.75em;
    padding: 12px 4px;
  }
  .primary-nav .menu a {
    font-size: 1em;
  }
  .primary-nav .menu li .dropdown {
    top: 42px;
  }
}
@media (min-width: 640px) and (max-width: 991px) {
  .ribbonContainer {
    width: 105px;
  }
  .ribbonContainer .inset {
    width: 105px;
    left: 0;
  }
}
@media (min-width: 320px) and (max-width: 639px) {
  footer .footer-nav header {
    text-align: left;
  }
  .bottom-links-wrapper ul li {
    text-align: left;
  }
  footer .footer-nav .footer-nav-links {
    text-align: left;
  }
  footer .footer-nav .footer-nav-links ul li a {
    text-align: left;
    font-size: 1.4em;
    line-height: 1.6em;
  }
  .ribbonContainer {
    right: 0;
    width: 80px;
  }
  .search-top {
    left: 60%;
  }
  #ribbon {
    width: 55px;
    height: 140px;
  }
  .ribbonContainer .inset {
    width: 90px;
    left: -8px;
  }
  #ribbon .ribbon-txt {
    white-space: nowrap;
    font-size: 0.93em;
    word-spacing: 3px;
  }
  #ribbon .content .green-sec:before {
    border-right: 47px solid transparent;
  }
  #ribbon .content .green-sec:after {
    border-left: 47px solid transparent;
  }
  #ribbon .content .green-sec,
  #ribbon .content {
    height: 82px;
  }
  #ribbon .container {
    height: 135px;
  }
  .logo a {
    height: 60px;
    margin: 40px auto;
  }
  .orbit-caption {
    font-size: 1.56em;
    line-height: 30px;
  }
}
@media (min-width: 320px) and (max-width: 1000px) {
  footer .footer-nav .footer-nav-links ul li a {
    text-align: left;
    font-size: 1.4em;
    line-height: 1.6em;
  }
}
@media (max-width: 859px) {
  .left-sidebar .upcoming-mcc-sec {
    margin-top: 15px;
  }
  .left-sidebar .sidenav-bg {
    padding-left: 15px;
  }
}
@media (max-width: 1021px) {
  .primary-nav .menu li.has-dropdown.active-bg a {
    color: #4b3290;
  }
  .primary-nav .menu li.has-dropdown > .dropdown {
    display: none;
  }
  .primary-nav .menu li.has-dropdown > .dropdown.active-dropdown {
    display: block;
    visibility: visible;
    opacity: 1;
  }
  .primary-nav .menu li .dropdown {
    padding-bottom: 20px;
    padding-top: 20px;
  }
  .primary-nav .menu li .dropdown .nav-container .links-area {
    border-left: 0;
  }
  .primary-nav .menu li .dropdown .nav-container .links-area ul li a {
    font-size: 0.86em;
  }
  .primary-nav .menu li .dropdown .nav-container .content-area h2 {
    font-size: 1.5em;
    display: none;
  }
  .primary-nav .menu > li.has-dropdown:hover > a:after {
    content: none;
  }
  .primary-nav .menu li .dropdown .nav-container .content-area a {
    width: 100%;
    font-size: 1.3em;
    text-align: center !important;
    text-decoration: underline;
  }
  .primary-nav .menu li .dropdown .nav-container .content-area {
    padding-left: 15px;
    width: 100%;
    margin-bottom: 30px;
  }
  .primary-nav .menu li .dropdown .nav-container .links-area {
    padding-left: 15px;
    width: 100%;
  }
  .primary-nav .menu li .dropdown {
    width: 100%;
    float: left;
    position: static;
    border-top: 0;
    margin-left: -15px;
    padding-bottom: 30px;
  }
  .primary-nav .menu li .dropdown .nav-container .links-area ul li {
    padding-left: 0;
  }
  .recruting-section .events .cal-info .visit-sec .visit-sec__address p {
    font-size: 0.87em;
    line-height: normal;
  }
  .recruting-section .events .cal-info .visit-sec .visit-sec__address .email {
    line-height: normal;
  }
  .search-top {
    left: 50%;
    right: auto;
    margin-left: -94.5px;
  }
  .logo a img {
    height: 100%;
  }
  .menu-icon.float-left,
  .menu-icon.float-right {
    position: absolute;
    left: 0;
    top: 9px;
    display: inline-block;
  }
  .primary-nav {
    width: 265px;
    position: fixed;
    left: -265px;
    top: 0;
    height: 100%;
    z-index: 50;
    border: 0;
    padding-top: 30px;
    overflow-y: auto;
  }
  .primary-nav .menu > li {
    display: block;
    width: 100%;
    font-size: 1em;
  }
  .primary-nav .menu > li a {
    font-size: 1em;
  }
  .top-nav-wrap .menu > li {
    display: block;
    width: 100%;
    font-size: 1em;
  }
  .top-bar ul.menu > li > a {
    padding: 10px 0;
    font-size: 1em;
    font-weight: 700;
  }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: 100%;
  }
  .top-bar,
  .top-nav-wrap {
    text-align: center;
  }
  .top-bar-left,
  .top-bar-right {
    width: 100%;
  }
  body.left-active {
    padding-left: 250px;
    overflow-x: hidden;
  }
  body.left-active .top-nav-wrap {
    left: 0;
  }
  body.left-active .wrapper-main {
    margin-left: -250px;
  }
  body.right-active {
    padding-left: 250px;
    overflow-x: hidden;
  }
  body.right-active .primary-nav ul li a {
    text-align: left !important;
    font-size: 1.12em;
  }
  body.right-active .primary-nav ul li {
    padding-left: 15px;
  }
  body.right-active .primary-nav {
    left: 0;
  }
  body.right-active .wrapper-main {
    margin-right: -250px;
  }
  .menu-icon:after {
    height: 3px;
    border-radius: 3px;
  }
  .left-sidebar .upcoming-mcc-sec h2 {
    font-size: 1em;
  }
  .left-sidebar .upcoming-mcc-sec h2 a.more {
    font-size: 0.75em;
  }
  .top-bar .right-nav {
    padding-left: 30px;
    color: var(--white);
    text-transform: uppercase;
    z-index: 100;
  }
  .top-bar .right-nav:hover {
    opacity: 0.8;
  }
  .menu-icon:after {
    width: 80%;
  }
}
@media (min-width: 992px) and (max-width: 1400px) {
  .main-slider .orbit-container li {
    background-position-y: -30% 0 !important;
  }
}
@media (min-width: 300px) and (max-width: 767px) {
  .social-sec {
    top: 320px;
  }
  .banner-hide-on-mobile {
    display: none;
  }
  .main-slider .orbit-container,
  .main-slider,
  .splide__slide,
  .splide {
    height: 250px !important;
  }
  .orbit-caption {
    text-align: left;
  }
  .main-slider .orbit-container li {
    height: 250px;
    background-position: center !important;
  }
}
@media (min-width: 500px) {
  .extra .column {
    padding-right: 50px;
  }
}
@media (max-width: 796px) {
  .left-sidebar .full-height {
    position: absolute;
    bottom: 0;
    top: 0;
  }
}
@media print {
  nav.top-nav,
  aside.left-sidebar,
  .green-sec,
  footer,
  img,
  .main-slider,
  .primary-nav .menu a,
  .addmissions-menu-sec,
  .left-sidebar,
  .admissions-burgermenu,
  .spotlight-area ul li a,
  .mcc-numbers h2 {
    display: none;
  }
  .noprint {
    display: none;
  }
  .logo {
    text-align: left;
    margin-left: 25px;
  }
  .logo a img {
    display: block;
    text-align: left;
    width: 50%;
  }
  .admissions-wrapper,
  .workforce-wrapper,
  main,
  .mid-main,
  .help-block {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  body {
    font:
      13pt Georgia,
      "Times New Roman",
      Times,
      Serif;
    line-height: 1.3;
    color: #000;
    background-color: var(--white) !important;
  }
  main {
    width: 100%;
    margin: 0;
    float: none;
  }
  .inner-mid-main .mid-main {
    padding: 0;
  }
  .inner-mid-main .maincontent-wrapper {
    padding: 0;
    margin: 0;
  }
  h1,
  .ge h1 {
    font: var(--h1);
    font-size: 22pt;
  }
  h2 {
    font: var(--h2);
    font-size: 14pt;
    margin-top: 25px;
  }
  h3 {
    font: var(--h3);
    font-size: 14pt;
    margin-top: 25px;
  }
  h4 {
    font: var(--h4);
    font-size: 14pt;
    margin-top: 25px;
  }
  h1.home-h1 {
    width: 100%;
  }
  p {
    page-break-inside: avoid;
  }
  ul li {
    font-size: 13pt;
    font-family: Georgia, "Times New Roman", Times, Serif;
    line-height: 1.3;
  }
  img {
    line-height: 1px;
  }
  .info-block-main div a {
    height: 0;
  }
  .block-1,
  .block-2,
  .block-3,
  .block-4 {
    height: 75px;
  }
  .help-block__title {
    font-size: 14pt;
    margin-top: 25px;
    padding: 0;
  }
  ul.help-block__link a {
    padding-left: 0;
  }
  .block-1 div,
  .block-2 div,
  .block-3 div,
  .block-4 div {
    height: 75px !important;
  }
  .directory h2 span:after {
    display: none;
  }
  .directory .columns,
  .directory.column {
    padding: 0;
  }
  .accordion-content {
    padding: 1rem;
    display: block;
  }
  @page {
    margin: 2cm;
  }
  * {
    @include box-shadow(none);
    @include text-shadow(none);
  }
  a:after {
    content: "( " attr(href) " )";
    font-size: 0.8em;
    font-weight: 400;
  }
}
.program-categories-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem;
}
.program-category {
  padding: 2rem 1.5rem;
  margin-bottom: 3rem;
  border-radius: 8px;
  border-left: 6px solid;
}
.program-category.purple {
  background-color: #f8f7fb;
  border-left-color: #5639a4;
}
.category-header {
  display: flex;
  align-items: center;
  margin-bottom: 1.5rem;
}
.category-header h2 {
  margin: 0;
  font-size: 1.953rem;
  font-weight: 700;
  color: var(--purple-primary);
}
.category-description {
  margin-bottom: 2rem;
}
.category-description p {
  color: var(--gray-text);
  font-size: 1rem;
  line-height: 1.6;
  margin: 0;
}
.option-cards {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.option-card {
  background-color: var(--white);
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 1.5rem;
  transition: all 0.3s ease;
  box-shadow: 0 2px 4px #0000000d;
}
.program-category.purple .option-card:hover {
  border-color: #5639a4;
  box-shadow: 0 4px 12px #5639a41a;
  transform: translateY(-2px);
}
.card-content h3 {
  margin: 0 0 0.75rem;
  font-size: 1.25rem;
}
.option-link {
  display: flex;
  align-items: center;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.3s ease;
}
.option-link {
  display: flex;
  align-items: center;
  text-decoration: underline;
  font-weight: 600;
  transition: color 0.3s ease;
  color: var(--purple-primary);
}
.option-link:hover,
.option-link:focus {
  color: #2d4319;
  text-decoration: underline;
}
.arrow-icon {
  font-size: 1.5rem;
  margin-right: 0.75rem;
  transition: transform 0.3s ease;
  font-weight: 700;
  color: var(--purple-primary);
  display: none;
}
.option-link:hover .arrow-icon,
.option-link:focus .arrow-icon {
  transform: translate(4px);
  color: #2d4319;
}
.card-content p {
  color: #555;
  font-size: 0.95rem;
  line-height: 1.5;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .program-categories-container {
    padding: 2rem;
  }
  .program-category {
    padding: 2.5rem;
    margin-bottom: 4rem;
  }
  .option-cards {
    gap: 1.25rem;
  }
  .option-card {
    padding: 2rem;
  }
}
@media screen and (min-width: 1024px) {
  .option-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 1.5rem;
  }
}
.option-link:focus {
  outline: 3px solid #2d4319;
  outline-offset: 2px;
  border-radius: 2px;
}
@media screen and (max-width: 767px) {
  .option-link {
    min-height: 44px;
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
  }
  .option-card {
    padding: 1.75rem;
  }
}
@media (prefers-contrast: high) {
  .option-card {
    border-color: var(--gray-text);
    border-width: 2px;
  }
  .option-card:hover {
    border-color: #000;
    border-width: 3px;
  }
  .program-category {
    border-left-width: 8px;
  }
  .option-link {
    font-weight: 700;
  }
}
@media (prefers-reduced-motion: reduce) {
  .option-card,
  .arrow-icon,
  .option-link {
    transition: none;
  }
  .option-link:hover .arrow-icon,
  .option-link:focus .arrow-icon {
    transform: none;
  }
}
nav.breadcrumb {
  margin-left: 20px;
  width: 100%;
}
.breadcrumb {
  margin-bottom: 15px;
}
.breadcrumb ol {
  border-radius: 0;
  padding: 0;
  list-style: none;
  margin-left: 0;
}
.breadcrumb a {
  color: var(--purple-medium);
  background: linear-gradient(to right, var(--purple-primary), var(--purple-primary)) no-repeat left bottom / 0 0.125rem;
  transition:
    background-size 0.5s ease,
    color 0.3s ease;
  padding-bottom: 0.05em;
}
.breadcrumb a:hover,
.hh-module .breadcrumb a:focus {
  color: var(--purple-dark);
  font-weight: var(--font-normal);
  background-size: 100% 0.125rem;
}
.breadcrumb > .active {
  color: var(--gray-text);
  font-weight: var(--font-semibold);
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  padding: 0 var(--space-2);
  color: var(--gray-mid-light);
  content: "|";
}
.workforce-wrapper .breadcrumb ol {
  margin-left: 20px;
}
.workforce-wrapper .primary-nav {
  z-index: 1001;
}
#emergency-alert {
  background-color: var(--orange-alert);
}
#emergency-alert .row {
  padding-top: 15px;
  padding-bottom: 15px;
}
#emergency-alert .small-1 {
  text-align: right;
}
#emergency-alert i {
  font-size: 2.5rem;
  line-height: 1.4;
}
#emergency-alert .title {
  font-size: 20px;
  font-weight: 700;
}
#emergency-alert a,
#emergency-alert a:visited {
  color: var(--gray-text);
}
#emergency-alert a:hover .title,
#emergency-alert a:focus .title {
  text-decoration: underline;
}
.incident-table tbody {
  border: none;
  background: none;
}
.incident-table tbody th {
  text-align: left;
}
.incident-table tr:nth-child(2n) {
  background: none;
}
.ge p:last-child {
  margin-bottom: 0;
}
.spotlight-block div {
  height: 300px;
}
.spotlight .spotlight-content {
  display: none;
}
.spotlight .spotlight-content.active {
  display: block;
}
.spotlight .spotlight-area .active {
  border: var(--border-width) solid var(--white);
}
.spotlight {
  min-height: 300px;
}
.spotlight .spotlight-area p {
  font-size: 21px;
  font-size: 1.31em;
  line-height: 10px;
  line-height: normal;
  color: var(--white);
  margin: 0;
}
.spotlight .spotlight-area h2 {
  font: var(--h2);
  line-height: normal;
  color: var(--white);
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  background-color: initial;
}
.spotlight .video-sec h2 {
  font: var(--h2);
  color: var(--white);
  text-transform: uppercase;
  margin: 0;
  padding: 0;
  background-color: initial;
}
.spotlight .video-sec h3 {
  font: var(--h3);
  color: var(--white);
  text-transform: uppercase;
  margin: 0;
}
.spotlight .video-sec p {
  font-size: 19px;
  font-size: 1.18em;
  color: var(--white);
  font-family: var(--font-primary);
  margin: 10px 0 0;
  padding-right: 20%;
}
.iETYas {
  height: 350px;
}
@media (max-width: 767px) {
  .workforce-wrapper .spotlight .spotlight-area p {
    padding-right: 0;
  }
  .spotlight .video-sec p {
    text-align: center;
    padding-right: 0;
  }
}
@media screen and (min-width: 64em) {
  .admissions-wrapper .spotlight-area h2 {
    font-size: 2.4em;
    padding-left: 0.6em;
  }
  .admissions-wrapper .spotlight-area ul li a {
    width: 90px;
  }
  .admissions-wrapper .spotlight-area p {
    padding-left: 2em;
  }
}
@media (max-width: 1024px) {
  .admissions-wrapper .spotlight .profile-pic {
    left: 25px;
  }
  .admissions-wrapper .spotlight ul li {
    margin: 0;
  }
  .workforce-wrapper .spotlight .profile-pic {
    left: 25px;
  }
}
.admmision-profiles__content h3 {
  background: none;
  padding: 0;
  text-transform: unset;
  margin-top: 0;
  font: var(--h5);
}
ul.accordion li.accordion-item {
  margin: 0;
}
.custom-slider .orbit-caption h2 {
  font: var(--h2);
  text-transform: uppercase;
  color: var(--white);
  margin: 0;
}
.custom-slider .orbit-caption p {
  font-size: 1.4rem;
  font-weight: 600;
}
.custom-slider .orbit-caption a,
.workforce__banner a {
  color: #fff;
  font-size: 1.5rem;
  font-weight: 600;
  text-decoration: underline;
}
.workforce__banner .overlay-text {
  text-align: left;
}
.mid-main.onecol.workforce__banner .overlay-text {
  padding: 0 35px;
}
.mid-main.onecol.workforce__banner img {
  margin-bottom: 0;
}
.custom-slider .orbit-caption {
  display: felx;
  width: auto;
  font-weight: 400;
  background: none;
  padding: 0 50px;
  align-items: center;
  top: 100px;
  margin-bottom: 100px;
}
.mid-main .custom-slider .orbit-caption {
  top: 90%;
}
.custom-slider ul {
  padding-left: 0;
  margin: 0;
}
.custom-slider .orbit-caption .caption {
  padding: 20px;
  background: #00000080;
  line-height: 0;
}
.custom-slider video {
  background-color: #000;
}
.custom-slider ul li {
  margin: 0;
}
@media (max-width: 800px) {
  .main-slider.custom-slider.large-8.medium-7.small-12.columns,
  .row.inner-mid-main.workforce-wrapper .small-12.columns.onecol.large-8.medium-7 {
    width: 100%;
  }
}
.alert-listing .admmision-profiles h3 {
  font: var(--h5);
  color: var(--purple-primary);
}
.alert-listing .admmision-profiles i:before {
  font-size: 50px;
}
.alert-listing .admmision-profiles .icon {
  margin-top: 15px;
  margin-left: 17px;
}
.gallery .row .columns img,
.gallery .modal .columns img {
  object-fit: cover;
  height: 100px;
}
@media (min-width: 40em) {
  .gallery .row .columns img,
  .gallery .modal .columns img {
    height: 150px;
  }
}
@media (min-width: 64em) {
  .gallery .row .columns img,
  .gallery .modal .columns img {
    height: 175px;
  }
}
.gallery .row .columns,
.gallery .modal .columns {
  float: left;
}
.semester-container .hrs {
  float: right;
  margin-right: 20px;
}
.onecol-content p.lead {
  font-size: 125%;
  line-height: 1.6;
}
ul.course-list {
  display: none;
  padding-left: 0;
}
#cc-widget-careers .cc-card {
  margin: 0 auto;
}
.isOr {
  font-size: 0.85rem;
}
.course-list .accordion-title {
  padding: 0.5rem;
}
ul.accordion li.accordion-item.firstOr {
  margin-top: 20px;
}
ul.accordion li.accordion-item.lastOr {
  margin-bottom: 20px;
}
ul.accordion.course-list {
  display: none;
  margin-top: 20px;
  margin-bottom: 0;
}
span.accordion-title:before {
  content: "";
}
#serverErrorMsg,
#successMsg {
  display: none;
}
.ge table.bidsTable tbody th,
.ge table.bidsTable tbody td,
table.bidsTable tbody th,
table.bidsTable tbody td {
  padding: 2px;
}
.faculty-list dl {
  display: block;
}
.faculty-list dh {
  clear: both;
  float: left;
  padding-right: 5px;
}
.faculty-list dd {
  font-weight: 700;
}
.faculty-list .admmision-profiles figure.float-left {
  width: 150px;
}
.faculty-list .admmision-profiles__content {
  flex: 1;
}
@media print {
  .accordion-content {
    padding: 1rem;
    display: block;
  }
}
.responsive-embed {
  margin-bottom: 0;
}
.responsive-embed {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden;
}
@media (min-width: 801px) {
  .admissions-burgermenu {
    display: none;
  }
}
.flexbox {
  display: flex;
  width: 100%;
}
.flexbox .left-sidebar .sidenav-bg {
  height: 100%;
}
@media (max-width: 1021px) {
  .top-nav-wrap {
    display: none;
  }
}
@media (min-width: 1024px) {
  .hero-slider {
    height: calc(100vh - var(--header-large) - 2rem);
    position: relative;
  }
  .hero-slider .splide,
  .hero-slider .splide__track,
  .hero-slider .splide__list,
  .hero-slider .splide__slide {
    height: 100%;
  }
  .hero-slider .splide__slide {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover !important;
    background-position: center !important;
  }
  .hero-slider .splide__slide.slide-has-video {
    background: none !important;
    overflow: hidden;
  }
  .hero-slider .splide__slide.slide-has-video .slide-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-width: 177.78vh;
    min-height: 100%;
    transform: translate(-50%, -50%);
    border: 0;
    object-fit: cover;
    pointer-events: none;
    z-index: 0;
  }
  .hero-slider .splide__slide:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, #0000004d, #0000 15% 60%, #0009);
    pointer-events: none;
    z-index: 1;
  }
  .hero-slider .slide-content {
    z-index: 2;
  }
  .hero-slider .slide-content {
    position: absolute;
    bottom: 120px;
    left: var(--gutter);
    z-index: 2;
    text-align: left;
    max-width: 600px;
    width: calc(100% - 2 * var(--gutter));
  }
  .hero-slider .slide-caption {
    color: #fff;
    text-align: left;
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.35);
    font-family: "Hanken Grotesk", var(--font-primary);
    font-size: 4rem;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
    margin: 0 0 2rem;
  }
  .hero-slider .slide-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    background-color: var(--yellow-primary);
    color: var(--purple-dark);
    font-size: 1rem;
    font-weight: 500;
    padding: 0.85em 1em;
    gap: 0.5rem;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 0.125rem;
    transition:
      background-color 0.3s ease-out,
      color 0.3s ease-out,
      box-shadow 0.3s ease-out;
    box-shadow: 0 0 0 0 var(--purple-dark);
  }
  .hero-slider .slide-button:after {
    content: "";
    display: block;
    width: 1rem;
    height: 0.75rem;
    background: currentColor;
    mask: url(arrow_circle_right.svg) center / contain no-repeat;
    transition: transform 0.3s ease-out;
  }
  .hero-slider .slide-button:hover,
  .hero-slider .slide-button:focus {
    background-color: var(--purple-dark);
    color: var(--yellow-primary);
    box-shadow: 0 0 0 1.5px var(--yellow-primary);
    border-radius: 0.05rem;
  }
  .hero-slider .slide-button:hover:after,
  .hero-slider .slide-button:focus:after {
    transform: translate(0.25rem);
  }
  .hero-slider .splide__arrows {
    position: absolute;
    bottom: 40px;
    left: var(--gutter);
    right: var(--gutter);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 10;
    pointer-events: none;
  }
  .hero-slider .splide__arrow {
    background: transparent;
    border: 4px solid #fff;
    color: #fff;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.3s ease;
    opacity: 1;
    position: relative;
    pointer-events: auto;
    flex-shrink: 0;
    transform: none;
    transform-origin: center center;
    top: auto;
  }
  .hero-slider .splide__arrow:hover {
    transform: scale(1.15);
  }
  .hero-slider .splide__arrow:focus-visible {
    transform: scale(1.15);
    outline: 2px solid #fff;
    outline-offset: 2px;
  }
  .hero-slider .splide__arrow:focus:not(:focus-visible) {
    outline: none;
  }
  .hero-slider .splide__arrow:disabled {
    opacity: 0.3;
    cursor: not-allowed;
  }
  .hero-slider .splide__arrow:disabled:hover {
    transform: none;
  }
  .hero-slider .splide__arrow i {
    font-size: 1.375rem;
    font-weight: 900;
    line-height: 1;
  }
  .hero-slider .splide__arrow svg {
    display: none;
  }
  .hero-slider .splide__pagination {
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    transform: translate(-50%);
    color: #fff;
    font-size: 1.125rem;
    font-weight: 600;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    padding: 0;
    margin: 0;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #00000003;
  }
  .hero-slider .splide__pagination span {
    display: inline;
  }
  .hero-slider .splide__pause-button {
    position: absolute;
    top: var(--gutter);
    right: var(--gutter);
    background-color: #00000003;
    color: #fff;
    border: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    z-index: 10;
    font-family: "Hanken Grotesk", var(--font-primary);
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.3rem;
    transition: transform 0.3s ease;
    height: 28px;
  }
  .hero-slider .splide__pause-button:hover {
    transform: scale(1.1);
    background-color: transparent;
  }
  .hero-slider .splide__pause-button:focus-visible {
    transform: scale(1.1);
    outline: 2px solid #fff;
    outline-offset: 4px;
  }
  .hero-slider .splide__pause-button:focus:not(:focus-visible) {
    outline: none;
  }
  .hero-slider .splide__pause-button .pause-text {
    display: inline;
    line-height: 1.3rem;
  }
  .hero-slider .splide__pause-button svg {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: block;
  }
  /* Single slide: no arrows/pagination row, so pull the caption + CTA down into
     the space it would have occupied (arrows sit at bottom: 40px). */
  .hero-slider.is-single-slide .splide__arrows {
    display: none;
  }
  .hero-slider.is-single-slide .slide-content {
    bottom: 40px;
  }
}
@media (max-width: 1023px) {
  .hero-slider {
    height: auto !important;
    position: relative;
  }
  .hero-slider .splide {
    height: auto !important;
    min-height: auto !important;
  }
  .hero-slider .splide__track {
    height: auto !important;
    min-height: auto !important;
    background: var(--purple-dark);
  }
  .hero-slider .splide__list,
  .hero-slider .splide__slide {
    height: auto !important;
    min-height: auto !important;
  }
  .hero-slider .orbit-container {
    height: auto !important;
  }
  .hero-slider.orbit-container,
  .hero-slider,
  .hero-slider .splide__slide,
  .hero-slider .splide {
    height: auto !important;
    min-height: 0 !important;
  }
  .hero-slider .splide__slide {
    position: relative;
    display: flex;
    flex-direction: column;
    background: none !important;
    min-height: auto;
  }
  .hero-slider .splide__slide.slide-has-video:before {
    display: none;
  }
  .hero-slider .splide__slide.slide-has-video .slide-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border: 0;
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
  }
  .hero-slider .splide__slide:before {
    content: "";
    display: block;
    aspect-ratio: 16 / 9;
    width: 100%;
    background:
      linear-gradient(180deg, #0000 0% 70%, #0006),
      var(--slide-bg) #d3d3d3 50% / cover no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
  }
  .hero-slider .slide-content {
    position: relative;
    transform: none;
    background: var(--purple-dark);
    padding: 2rem var(--gutter);
    padding-bottom: 7.5rem;
    text-align: center;
    width: 100%;
    max-width: none;
    bottom: auto;
    left: auto;
    flex-shrink: 0;
    min-height: auto;
  }
  .hero-slider .slide-caption {
    color: #fff;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 120%;
    margin: 0 0 1.5rem;
    text-align: left;
  }
  .hero-slider .slide-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    line-height: 1;
    cursor: pointer;
    background-color: var(--yellow-primary);
    color: var(--purple-dark);
    font-size: 1rem;
    font-weight: 500;
    padding: 0.85em 1em;
    gap: 0.5rem;
    text-decoration: none;
    border: 1px solid transparent;
    border-radius: 0.125rem;
    transition:
      background-color 0.3s ease-out,
      color 0.3s ease-out,
      box-shadow 0.3s ease-out;
    box-shadow: 0 0 0 0 var(--purple-dark);
    width: 100%;
    margin-bottom: 0;
  }
  .hero-slider .slide-button:after {
    content: "";
    display: block;
    width: 1rem;
    height: 0.75rem;
    background: currentColor;
    mask: url(arrow_circle_right.svg) center / contain no-repeat;
    transition: transform 0.3s ease-out;
  }
  .hero-slider .slide-button:hover,
  .hero-slider .slide-button:focus {
    background-color: var(--purple-dark);
    color: var(--yellow-primary);
    box-shadow: 0 0 0 1.5px var(--yellow-primary);
    border-radius: 0.05rem;
  }
  .hero-slider .slide-button:hover:after,
  .hero-slider .slide-button:focus:after {
    transform: translate(0.25rem);
  }
  .hero-slider .splide__arrows {
    background: transparent;
    padding: 0 var(--gutter);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
    position: absolute;
    transform: none;
    height: auto;
    left: 0;
    right: 0;
    bottom: 2rem;
    z-index: 5;
  }
  .hero-slider .splide__arrow {
    background: transparent;
    border: 4px solid #fff;
    color: #fff;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: relative;
    transition: transform 0.3s ease;
    flex-shrink: 0;
    transform: none;
    transform-origin: center center;
    top: auto;
    opacity: 1;
    pointer-events: auto;
  }
  .hero-slider .splide__arrow:hover {
    transform: scale(1.15);
  }
  .hero-slider .splide__arrow:focus-visible {
    transform: scale(1.15);
    outline: 2px solid #fff;
    outline-offset: 2px;
  }
  .hero-slider .splide__arrow:focus:not(:focus-visible) {
    outline: none;
  }
  .hero-slider .splide__arrow:disabled {
    opacity: 0.3;
  }
  .hero-slider .splide__arrow:disabled:hover {
    transform: none;
  }
  .hero-slider .splide__arrow svg {
    display: none;
  }
  .hero-slider .splide__arrow i {
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1;
  }
  .hero-slider .splide__pagination {
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    position: static;
    padding: 0;
    margin: 0;
    line-height: 1;
    background-color: #00000003;
  }
  .hero-slider .splide__pagination span {
    display: inline;
  }
  .hero-slider .splide__pause-button {
    position: absolute;
    bottom: auto;
    top: calc((100vw / 16 * 9) - 28px - var(--gutter));
    right: var(--gutter);
    background-color: #00000003;
    border: none;
    padding: 0;
    margin: 0;
    gap: 0.5rem;
    height: 28px;
    line-height: 1;
    z-index: 10;
    font-family: "Hanken Grotesk", var(--font-primary);
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.3rem;
    transition: transform 0.3s ease;
    display: flex;
    align-items: center;
  }
  .hero-slider .splide__pause-button:hover {
    transform: scale(1.1);
  }
  .hero-slider .splide__pause-button:focus-visible {
    transform: scale(1.1);
    outline: 2px solid #fff;
    outline-offset: 4px;
  }
  .hero-slider .splide__pause-button:focus:not(:focus-visible) {
    outline: none;
  }
  .hero-slider .splide__pause-button .pause-text {
    display: inline;
    line-height: 1.3rem;
  }
  .hero-slider .splide__pause-button svg {
    width: 28px;
    height: 28px;
    display: block;
  }
  /* Single slide: reclaim the padding reserved for the arrow row below the CTA. */
  .hero-slider.is-single-slide .splide__arrows {
    display: none;
  }
  .hero-slider.is-single-slide .slide-content {
    padding-bottom: 2rem;
  }
}
body {
  top: 0 !important;
}
.skiptranslate iframe {
  display: none !important;
}
.google-translate {
  position: relative;
  list-style-type: none;
  margin: 0;
}
.google-translate #google_translate_element {
  min-height: 1.5rem;
  position: relative;
}
.google-translate #google_translate_element:before {
  content: "Select Language";
  font-family: var(--font-primary) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  position: absolute;
  left: 0;
  top: 0;
  padding-right: 1.25rem;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.2s ease-out;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 17 10'%3E%3Cpath fill='%23FFC20E' fill-rule='evenodd' d='M9.50411 9.20357L16.5223 2.20965C16.9055 1.80276 16.9055 1.17963 16.5223 0.796502C16.1392 0.413373 15.4923 0.413373 15.1092 0.796502L8.80969 7.096L2.51019 0.796502C2.1033 0.413373 1.48017 0.413373 1.09704 0.796502C0.71391 1.17963 0.71391 1.80278 1.09704 2.20965L8.09096 9.20357C8.49785 9.5867 9.12098 9.5867 9.50411 9.20357Z' clip-rule='evenodd'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 0.875rem 0.5rem;
  white-space: nowrap;
  line-height: 1.5rem;
  height: 1.5rem;
}
.google-translate #google_translate_element.loaded:before {
  opacity: 0;
}
.google-translate #google_translate_element .goog-te-gadget {
  font-family: var(--font-primary) !important;
  font-size: 1rem !important;
  color: var(--white) !important;
  line-height: 1 !important;
}
.google-translate #google_translate_element .goog-te-gadget-icon,
.google-translate #google_translate_element .goog-logo-link,
.google-translate #google_translate_element .VIpgJd-ZVi9od-l4eHX-hSRGPd,
.google-translate #google_translate_element img {
  display: none !important;
}
.google-translate #google_translate_element .goog-te-gadget > span {
  display: none !important;
}
.google-translate #google_translate_element .goog-te-gadget {
  font-size: 0 !important;
}
.google-translate #google_translate_element .goog-te-gadget > div {
  font-size: 1rem !important;
}
.google-translate #google_translate_element .goog-te-gadget-simple {
  display: none !important;
}
.google-translate #google_translate_element .goog-te-combo {
  background: transparent !important;
  border: none !important;
  color: var(--white) !important;
  font-family: var(--font-primary) !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  padding: 0 1.25rem 0 0 !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 17 10'%3E%3Cpath fill='%23FFC20E' fill-rule='evenodd' d='M9.50411 9.20357L16.5223 2.20965C16.9055 1.80276 16.9055 1.17963 16.5223 0.796502C16.1392 0.413373 15.4923 0.413373 15.1092 0.796502L8.80969 7.096L2.51019 0.796502C2.1033 0.413373 1.48017 0.413373 1.09704 0.796502C0.71391 1.17963 0.71391 1.80278 1.09704 2.20965L8.09096 9.20357C8.49785 9.5867 9.12098 9.5867 9.50411 9.20357Z' clip-rule='evenodd'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  background-size: 0.875rem 0.5rem !important;
  margin: 0;
  height: 1.5rem;
}
.google-translate #google_translate_element .goog-te-combo:hover {
  text-decoration: underline !important;
}
.google-translate #google_translate_element .goog-te-combo option {
  background: var(--purple-dark) !important;
  color: var(--white) !important;
}
@media (max-width: 74.999rem) {
  .google-translate {
    border-top: 0.0625rem solid var(--purple-light);
    width: calc(100% + 3rem);
    margin-inline: -1.5rem;
    padding-inline: 1.5rem;
    position: relative;
  }
  .google-translate #google_translate_element {
    margin: 20px 0;
    width: 100%;
    position: relative;
  }
  .google-translate #google_translate_element:before {
    font-size: 1.25rem !important;
    padding-right: 2rem !important;
    height: auto;
    line-height: normal;
  }
  .google-translate #google_translate_element .goog-te-gadget {
    width: 100%;
    position: relative;
  }
  .google-translate #google_translate_element .goog-te-gadget:after {
    content: "" !important;
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 1rem !important;
    height: 0.625rem !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 17 10'%3E%3Cpath fill='%23FFFFFF' fill-rule='evenodd' d='M9.50411 9.20357L16.5223 2.20965C16.9055 1.80276 16.9055 1.17963 16.5223 0.796502C16.1392 0.413373 15.4923 0.413373 15.1092 0.796502L8.80969 7.096L2.51019 0.796502C2.1033 0.413373 1.48017 0.413373 1.09704 0.796502C0.71391 1.17963 0.71391 1.80278 1.09704 2.20965L8.09096 9.20357C8.49785 9.5867 9.12098 9.5867 9.50411 9.20357Z' clip-rule='evenodd'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    pointer-events: none !important;
    z-index: 1 !important;
    margin-right: 0.25rem;
  }
  .google-translate #google_translate_element .goog-te-combo {
    width: 100% !important;
    padding: 0 2rem 0 0 !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--white) !important;
    text-align: left !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
  }
  .google-translate #google_translate_element .goog-te-combo option {
    background: var(--purple-dark) !important;
    color: var(--white) !important;
    font-size: 1rem !important;
  }
}
#translate-mobile {
  @media (max-width: 74.999rem) {
    display: block;
    list-style: none;
    padding: 0;
    margin: 0;
  }
  @media (min-width: 75rem) {
    display: none;
  }
}
.goog-te-menu-frame {
  box-shadow: 0 4px 16px #0000004d !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  border-radius: 0 !important;
}
.goog-te-menu-value {
  color: var(--white) !important;
}
.goog-te-menu2 {
  background: var(--purple-dark) !important;
  border: 0 !important;
  max-width: none !important;
}
.goog-te-menu2-item div,
.goog-te-menu2-item:link div,
.goog-te-menu2-item:visited div,
.goog-te-menu2-item:active div {
  background: var(--purple-dark) !important;
  color: var(--white) !important;
  font-family: var(--font-primary) !important;
  border: 0 !important;
  padding: 0.5rem 1rem !important;
}
.goog-te-menu2-item-selected div,
.goog-te-menu2-item-selected:link div,
.goog-te-menu2-item-selected:visited div,
.goog-te-menu2-item-selected:active div,
.goog-te-menu2-item:hover div {
  background: var(--purple-primary) !important;
  color: var(--white) !important;
}
.goog-te-menu2 table,
.goog-te-menu2 tbody,
.goog-te-menu2 td {
  border: 0 !important;
}
.program-search-section {
  background-color: var(--purple-primary);
  padding: 3rem 0;
}
.program-search-title {
  font: var(--h2);
  color: var(--white);
  text-align: left;
  margin: 0 0 1.5rem;
  font-weight: 700;
}
.program-search-form {
  display: flex;
  align-items: stretch;
  gap: 1rem;
}
.program-search-wrapper {
  display: flex;
  gap: 0;
  flex: 1;
  align-items: stretch;
}
.program-search-input {
  flex: 1;
  padding: 0.625rem 1rem;
  font-size: 1rem;
  border: 2px solid var(--white);
  border-right: none;
  border-radius: 0.125rem 0 0 0.125rem;
  background: var(--white);
  color: var(--gray-text);
  font-family: var(--font-primary);
  line-height: 1.2;
  height: auto;
  margin-bottom: 0;
  box-shadow: 0 0 0 2px transparent;
  transition:
    border-color 0.3s ease-out,
    box-shadow 0.3s ease-out;
}
.program-search-input::placeholder {
  color: var(--gray-mid);
}
.program-search-input:focus {
  outline: none;
  border-color: var(--yellow-primary);
  box-shadow: 0 0 0 2px #ffc20e4d;
}
.program-search-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.2;
  cursor: pointer;
  padding: 0.625rem 1.25rem;
  font-size: 1rem;
  font-weight: 500;
  background-color: var(--yellow-primary);
  color: var(--purple-dark);
  border: 1px solid transparent;
  border-radius: 0 0.125rem 0.125rem 0;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out,
    box-shadow 0.3s ease-out;
  white-space: nowrap;
  font-family: var(--font-primary);
  box-shadow: 0 0 0 0 var(--purple-dark);
}
.program-search-button:hover,
.program-search-button:focus {
  background-color: var(--purple-dark);
  color: var(--white);
  border-radius: 0.05rem 0.05rem 0.05rem 0;
}
.program-search-link {
  flex-shrink: 0;
  display: flex;
  align-items: stretch;
}
.all-programs-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.2;
  cursor: pointer;
  gap: 0.5rem;
  padding: 0.625rem 1.25rem;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  color: var(--white);
  border: 2px solid var(--white);
  border-radius: 0.125rem;
  transition:
    background-color 0.3s ease-out,
    color 0.3s ease-out,
    box-shadow 0.3s ease-out;
  white-space: nowrap;
  font-family: var(--font-primary);
}
.all-programs-link:after {
  content: "";
  display: block;
  width: 1rem;
  height: 0.75rem;
  background: currentColor;
  mask: url(arrow_circle_right.svg) center / contain no-repeat;
  -webkit-mask: url(arrow_circle_right.svg) center / contain no-repeat;
  transition: transform 0.3s ease-out;
}
.all-programs-link:hover,
.all-programs-link:focus {
  background-color: var(--white);
  color: var(--purple-dark);
  box-shadow: 0 0 0 1.5px var(--purple-dark);
  border-radius: 0.05rem;
}
.all-programs-link:hover:after,
.all-programs-link:focus:after {
  transform: translate(0.25rem);
}
@media (max-width: 640px) {
  .program-search-section {
    padding: 2rem 0;
  }
  .program-search-title {
    font-size: 1.75rem;
    margin-bottom: 1.5rem;
  }
  .program-search-form {
    flex-direction: column;
    align-items: stretch;
  }
  .program-search-wrapper {
    flex-direction: column;
    gap: 0.75rem;
  }
  .program-search-input {
    border-right: 2px solid var(--white);
    border-radius: 0.25rem;
  }
  .program-search-button {
    border-radius: 0.25rem;
    width: 100%;
  }
  .program-search-link {
    width: 100%;
  }
  .all-programs-link {
    width: 100%;
    justify-content: center;
  }
}
.stats-spotlight-section {
  padding: 3rem 15px;
  background-color: var(--white);
}
.stats-spotlight-section > .row > .row {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}
.stats-spotlight-section .stats-column,
.stats-spotlight-section .spotlight-column {
  flex: 1 1 100%;
  max-width: 100%;
}
@media (min-width: 1024px) {
  .stats-spotlight-section .stats-column,
  .stats-spotlight-section .spotlight-column {
    flex: 1 1 calc(50% - 1rem);
    max-width: calc(50% - 1rem);
  }
}
@media (max-width: 1023px) {
  .stats-spotlight-section {
    padding: 0 15px 3rem;
  }
  .stats-spotlight-section .stats-column {
    margin-bottom: 0;
  }
  .stats-spotlight-section .spotlight-column {
    margin-top: 2rem;
  }
}
.stats-column h2,
.spotlight-column h2 {
  font: var(--h2);
  color: var(--purple-dark);
  padding: 1rem 0;
  margin-bottom: 2rem;
  text-align: left;
  text-transform: capitalize;
}
.stats-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  max-width: 500px;
  margin: 0 auto;
}
@media (min-width: 1200px) {
  .stats-grid {
    grid-template-columns: repeat(2, 1fr);
    max-width: none;
    margin: 0;
  }
}
.stat-item {
  border-radius: 0.5rem;
  padding: 2rem;
  text-align: center;
  animation: fadeInUp 0.6s ease-out backwards;
  position: relative;
  border: 4px solid transparent;
  box-shadow: inset 0 0 0 1px transparent;
}
.stat-item:nth-child(1) {
  background-color: var(--purple-primary);
  border-color: var(--purple-primary);
  box-shadow: inset 0 0 0 1px var(--purple-dark);
}
.stat-item:nth-child(2) {
  background-color: var(--cyan-primary);
  border-color: var(--cyan-primary);
  box-shadow: inset 0 0 0 1px var(--purple-dark);
}
.stat-item:nth-child(3) {
  background-color: #cbcffb;
  border-color: #cbcffb;
  box-shadow: inset 0 0 0 1px var(--purple-dark);
}
.stat-item:nth-child(4) {
  background-color: var(--yellow-primary);
  border-color: var(--yellow-primary);
  box-shadow: inset 0 0 0 1px var(--purple-dark);
}
.stat-item:nth-child(1) {
  animation-delay: 0.1s;
}
.stat-item:nth-child(2) {
  animation-delay: 0.2s;
}
.stat-item:nth-child(3) {
  animation-delay: 0.3s;
}
.stat-item:nth-child(4) {
  animation-delay: 0.4s;
}
.stat-content {
  position: relative;
}
.stat-content h3.stat-number {
  font-size: 3rem;
  font-weight: 700;
  margin: 0 0 0.5rem;
  line-height: 1;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: none !important;
}
.stat-item:nth-child(1) .stat-content h3.stat-number {
  color: var(--white);
}
.stat-item:nth-child(2) .stat-content h3.stat-number,
.stat-item:nth-child(3) .stat-content h3.stat-number,
.stat-item:nth-child(4) .stat-content h3.stat-number {
  color: var(--purple-dark);
}
.stat-icon {
  width: 60px;
  height: 60px;
  margin-right: 1rem;
  flex-shrink: 0;
  display: block;
}
.stat-item:nth-child(1) .stat-icon {
  fill: var(--white);
}
.stat-item:nth-child(2) .stat-icon,
.stat-item:nth-child(3) .stat-icon,
.stat-item:nth-child(4) .stat-icon {
  fill: var(--purple-dark);
}
.stat-content p {
  font-size: 1rem;
  margin: 0;
  line-height: 1.4;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.8rem;
}
.stat-item:nth-child(1) .stat-content p {
  color: var(--white);
}
.stat-item:nth-child(2) .stat-content p,
.stat-item:nth-child(3) .stat-content p,
.stat-item:nth-child(4) .stat-content p {
  color: var(--purple-dark);
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.spotlight-story {
  border-radius: 0.5rem;
  overflow: hidden;
  margin-bottom: 1rem;
  text-decoration: none;
  display: block;
  transition: background-color 0.3s ease;
}
.spotlight-image {
  width: 100%;
  height: 250px;
  overflow: hidden;
}
.spotlight-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.spotlight-story:hover .spotlight-image img {
  transform: scale(1.05);
}
.spotlight-content {
  padding: 1.5rem;
  background-color: #cbcffb50;
}
.spotlight-content h3 {
  font: var(--h3);
  color: var(--purple-primary);
  margin: 0 0 1rem;
  text-decoration: none;
  font-weight: inherit;
  position: relative;
}
.spotlight-content h3 span {
  background: linear-gradient(to right, var(--purple-primary), var(--purple-primary)) no-repeat left bottom / 0 0.125rem;
  transition: background-size 0.5s ease;
  padding-bottom: 0.05em;
  text-shadow: none;
}
.spotlight-story:hover .spotlight-content h3 span {
  background-size: 100% 0.125rem;
  text-shadow: none;
}
.spotlight-content p {
  color: var(--gray-text);
  line-height: 1.6;
  margin: 0;
  text-shadow: none;
}
.spotlight-story:hover .spotlight-content p {
  text-shadow: none;
}
.spotlight-link {
  text-align: center;
  margin-top: 1rem;
}
.spotlight-link a {
  margin-top: 0;
  margin-bottom: 0;
  padding: 1rem;
  width: 100%;
  text-align: center;
  justify-content: center;
  text-decoration: none !important;
  text-shadow: none !important;
}
.spotlight-link a:hover,
.spotlight-link a:focus {
  text-decoration: none !important;
  text-shadow: none !important;
}
.upcoming-events-full {
  padding: 3rem 15px;
  background-color: var(--white);
}
.upcoming-events-full .events-title {
  font: var(--h2);
  color: var(--purple-dark);
  padding: 1rem 0;
  margin-bottom: 2rem;
  margin-top: 0;
  text-align: left;
  text-transform: capitalize;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.events-more-button {
  margin-left: auto;
  text-decoration: none !important;
  background-image: none !important;
  text-shadow: none !important;
  margin-bottom: 0;
}
.events-more-button:hover,
.events-more-button:focus {
  text-decoration: none !important;
  background-image: none !important;
  text-shadow: none !important;
}
.upcoming-events-full .events-grid {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin: 0;
}
.upcoming-events-full .event-card {
  flex: 1;
  max-width: 25%;
  padding: 0 0.25rem;
}
.stats-spotlight-section .row,
.upcoming-events-full .row {
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 1023px) {
  .stats-column h2,
  .spotlight-column h2,
  .upcoming-events-full .events-title {
    margin-top: 0;
  }
  .upcoming-events-full .events-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1rem !important;
    margin: 0 !important;
  }
  .upcoming-events-full .event-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: none !important;
    padding: 0 !important;
    float: none !important;
  }
  .info-block-main {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1rem !important;
    padding: 1.5rem !important;
    margin-block: 0 !important;
  }
  .info-block-main div.columns {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    float: none !important;
    height: 300px !important;
  }
  .info-block-main div.columns div {
    height: 100%;
  }
  .info-block-main div a {
    display: flex !important;
    align-items: flex-end !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }
  .info-block-main div a span {
    padding-bottom: 1rem !important;
  }
  .info-block-main div a:after {
    margin-bottom: 1rem !important;
  }
}
.info-block-main:before {
  content: none !important;
}
@media (max-width: 640px) {
  .stat-content h3.stat-number {
    font-size: 2.5rem;
  }
  .spotlight-story {
    margin-left: 0;
    margin-right: 0;
  }
  .upcoming-events-full .events-grid {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    margin: 0;
  }
  .upcoming-events-full .event-card {
    width: 100%;
    max-width: 100%;
    flex: none;
    padding: 0;
  }
  .upcoming-events-full .event-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .upcoming-events-full .event-date {
    max-width: 120px;
  }
  .upcoming-events-full .event-details {
    text-align: center;
  }
  .info-block-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
    padding: 1rem !important;
  }
  .info-block-main div.columns {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    float: none !important;
    height: 300px !important;
  }
  .info-block-main div.columns div {
    height: 100%;
  }
  .info-block-main div a {
    display: flex !important;
    align-items: flex-end !important;
    padding: 0 !important;
  }
  .info-block-main div a span {
    padding: 0 1rem 1rem !important;
    text-align: left !important;
  }
  .info-block-main div a:after {
    margin-bottom: 1rem !important;
    margin-right: 0.5rem !important;
  }
}
.upcoming-events-full .events-grid:before,
.upcoming-events-full .events-grid:after {
  content: none !important;
}
.mcc-spotlights {
  background-color: var(--purple-dark);
  padding: var(--space) 0;
  overflow: hidden;
}
.spotlights-container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 var(--gutter);
}
.spotlights-header {
  text-align: center;
  margin-bottom: 3rem;
}
.spotlights-header h2 {
  font: var(--h2);
  color: var(--white);
  margin: 0 0 1.5rem;
  font-size: clamp(2rem, 4vw, 3.5rem);
}
.spotlights-intro {
  font-family: var(--geist);
  font-size: 1.125rem;
  line-height: 1.5;
  color: #d9d9d9;
  max-width: 32rem;
  margin: 0 auto;
}
.spotlights-cards {
  display: flex;
  gap: 0.5rem;
  height: 432px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.spotlight-card {
  position: relative;
  border-radius: 0.5rem;
  overflow: hidden;
  cursor: pointer;
  height: 100%;
  outline: none;
  flex-grow: var(--card-grow, 1);
  flex-shrink: 1;
  flex-basis: 0;
  min-width: 0;
  transition: flex-grow 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.spotlight-card:focus-visible {
  box-shadow: 0 0 0 3px var(--yellow-primary);
}
.spotlight-card.active {
  --card-grow: 4;
}
.card-image-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  overflow: hidden;
  transition: right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.card-image-container img {
  position: absolute;
  left: 50%;
  transform: translate(-50%) scale(1);
  height: 100%;
  width: 292px;
  object-fit: cover;
  object-position: center center;
  transition:
    left 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform 0.3s ease-out;
}
.spotlight-card:not(.active):hover .card-image-container img {
  transform: translate(-50%) scale(1.05);
  transition:
    left 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform 0.3s ease-out;
}
.spotlight-card:not(.active) .card-image-container {
  right: 0;
}
.spotlight-card.active .card-image-container {
  right: 370px;
}
.spotlight-card.active .card-image-container img {
  left: 50%;
  transform: translate(-50%);
  transition:
    left 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.spotlight-card.active:hover .card-image-container img {
  transform: translate(-50%);
}
.spotlight-card:not(.active):hover .card-image-container:after {
  content: "";
  position: absolute;
  inset: 0;
  background: #0000001a;
}
.card-image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.2), transparent);
  opacity: 0;
  transition: opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.spotlight-card.active .card-image-overlay {
  opacity: 1;
}
.card-badge--collapsed {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translate(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  border-radius: 100px;
  font-family: var(--geist);
  font-weight: 700;
  font-size: 0.75rem;
  white-space: nowrap;
  background-color: var(--yellow-primary) !important;
  box-shadow: 0 0 0 1.5px var(--yellow-primary);
  color: var(--purple-dark) !important;
  transition:
    opacity 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    background-color 0.3s ease,
    color 0.3s ease;
  z-index: 2;
}
.spotlight-card:not(.active):hover .card-badge--collapsed {
  background-color: var(--purple-dark) !important;
  color: var(--white) !important;
  box-shadow: 0 0 0 1.5px var(--yellow-primary);
}
.spotlight-card.active .card-badge--collapsed {
  opacity: 0;
  pointer-events: none;
}
.spotlight-card .card-content {
  position: absolute;
  right: 0;
  top: 0;
  width: 370px;
  height: 100%;
  background-color: #cbcffb;
  padding: 1.5rem 2rem;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transform: translate(100%);
  opacity: 0;
  transition:
    transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94),
    opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  will-change: transform, opacity;
}
.spotlight-card.active .card-content {
  transform: translate(0);
  opacity: 1;
}
.quote-icon {
  margin-bottom: 1rem;
  flex-shrink: 0;
}
.quote-icon svg {
  width: 40px;
  height: 35px;
}
.card-quote {
  font-family: var(--geist);
  font-size: clamp(1.25rem, 2.5vw, 1.5rem);
  font-weight: 400;
  line-height: 1.4;
  color: var(--purple-dark);
  margin: 0 0 auto;
  flex-grow: 1;
  border-left: none;
  padding: 0;
}
.card-info {
  margin-top: auto;
  display: flex;
  flex-direction: column;
}
.card-name {
  font-family: var(--geist);
  font-weight: 700 !important;
  font-size: 1.125rem !important;
  color: var(--purple-dark) !important;
  margin: 0 0 0.25rem !important;
}
.card-major {
  font-family: var(--geist);
  font-weight: 400;
  font-size: 1rem !important;
  color: var(--purple-dark) !important;
  margin: 0 0 0.75rem !important;
}
.card-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.375rem 1rem;
  border-radius: 100px;
  font-family: var(--geist);
  font-weight: 700;
  font-size: 0.875rem;
  white-space: nowrap;
  background-color: var(--purple-dark);
  color: var(--white);
  max-width: 100%;
  align-self: flex-end;
  width: auto;
  flex-shrink: 0;
  @media (max-width: 767px) {
    align-self: center;
  }
}
.spotlight-card .card-content .card-badge {
  background-color: var(--purple-dark);
  color: var(--white);
}
.card-badge--student.card-badge--collapsed,
.card-badge--alumni.card-badge--collapsed,
.card-badge--donor.card-badge--collapsed,
.card-badge--faculty.card-badge--collapsed {
  background-color: var(--yellow-primary) !important;
  color: var(--purple-dark) !important;
}
.spotlights-carousel {
  display: none;
}
@media (max-width: 1023px) {
  .spotlights-cards {
    display: none;
  }
  .spotlights-carousel {
    display: block;
    position: relative;
    overflow: hidden;
  }
  .carousel-track {
    display: flex;
    transition: transform 0.4s ease-out;
  }
  .carousel-slide {
    flex: 0 0 50%;
    min-width: 50%;
    padding: 0 0.5rem;
    box-sizing: border-box;
  }
  .carousel-card {
    background-color: #cbcffb;
    border-radius: 0.5rem;
    overflow: hidden;
  }
  .carousel-image-container {
    width: 100%;
    max-height: 550px;
    overflow: hidden;
  }
  .carousel-image-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
  .carousel-content {
    padding: 1.5rem;
  }
  .carousel-content .quote-icon {
    margin-bottom: 0.75rem;
  }
  .carousel-content .quote-icon svg {
    width: 32px;
    height: 28px;
  }
  .carousel-quote {
    font-family: var(--geist);
    font-size: clamp(1.25rem, 1.5vw, 1.5rem);
    font-weight: 400;
    line-height: 1.5;
    color: var(--purple-dark);
    margin: 0 0 1.5rem;
    border-left: 0;
    padding: 0;
  }
  .carousel-info {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }
  .carousel-name {
    font-family: var(--geist);
    font-weight: 700;
    font-size: 1.125rem;
    color: var(--purple-dark);
    margin: 0;
  }
  .carousel-major {
    font-family: var(--geist);
    font-weight: 400;
    font-size: 0.875rem;
    color: var(--purple-dark);
    margin: 0 0 0.5rem;
  }
  .carousel-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
  }
  .carousel-arrow {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 3px solid var(--white);
    background: transparent;
    color: var(--white);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition:
      transform 0.3s ease,
      background-color 0.3s ease;
    flex-shrink: 0;
  }
  .carousel-arrow:hover {
    transform: scale(1.1);
    background-color: #ffffff1a;
  }
  .carousel-arrow:focus-visible {
    outline: 2px solid var(--yellow-primary);
    outline-offset: 2px;
  }
  .carousel-arrow i {
    font-size: 1rem;
  }
  .carousel-pagination {
    display: flex;
    gap: 0.5rem;
  }
  .carousel-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--white);
    background: transparent;
    cursor: pointer;
    padding: 0;
    transition: background-color 0.3s ease;
  }
  .carousel-dot.active {
    background-color: var(--white);
  }
  .carousel-dot:focus-visible {
    outline: 2px solid var(--yellow-primary);
    outline-offset: 2px;
  }
}
@media (max-width: 767px) {
  .carousel-slide {
    flex: 0 0 100%;
    min-width: 100%;
  }
}
@media (max-width: 480px) {
  .spotlights-header h2 {
    font-size: 1.75rem;
  }
  .spotlights-intro {
    font-size: 1rem;
  }
  .carousel-image-container {
    height: 280px;
  }
  .carousel-image-container img {
    object-position: center 20%;
  }
  .carousel-content {
    padding: 1.25rem;
  }
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}
.splide__pagination {
  display: flex;
  justify-content: center;
  gap: 5px;
  width: 100%;
}
.splide {
  width: 100%;
  height: 426px;
  margin: 0 auto;
  background-size: cover;
}
.splide__slide {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 100%;
  width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover !important;
  -webkit-tap-highlight-color: transparent;
}
.splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.splide__pause-button {
  position: absolute;
  bottom: 10px;
  right: 45px;
  background: #0009;
  color: #fff;
  border: none;
  padding: 8px 12px;
  cursor: pointer;
  font-size: 14px;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}
.splide__pause-button i {
  font-size: 20px;
  pointer-events: none;
}
.splide__pause-button:hover {
  background: #000c;
}
.splide__track {
  overflow: hidden;
  height: 100%;
}
.splide__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #00000080;
  color: #fff;
  border: none;
  cursor: pointer;
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.splide__pagination__page {
  width: 12px;
  height: 12px;
  background: #ccc;
  border-radius: 50%;
  cursor: pointer;
}
.splide__pagination__page.is-active {
  background: #fff;
}
@media (min-width: 300px) and (max-width: 480px) {
  .splide__slide {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    height: auto;
  }
  .splide__pause-button {
    position: absolute;
    bottom: 10px;
    right: 10px;
    background: #0009;
    color: #fff;
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    font-size: 14px;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
  }
}
.splide__container,
.splide__slide {
  box-sizing: border-box;
  position: relative;
}
.splide.is-initialized:not(.is-active) .splide__list,
.splide__track--ttb > .splide__list {
  display: block;
}
.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}
.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}
.splide:not(.is-overflow) .splide__pagination,
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
  display: none;
}
.splide__progress__bar {
  width: 0;
}
.splide {
  position: relative;
  visibility: hidden;
}
.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}
.splide__slide {
  backface-visibility: hidden;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  -webkit-tap-highlight-color: transparent;
}
.splide__slide img {
  vertical-align: bottom;
  object-fit: contain;
}
.splide__spinner {
  animation: 1s linear infinite splide-loading;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  contain: strict;
  display: inline-block;
  height: 20px;
  inset: 0;
  margin: auto;
  position: absolute;
  width: 20px;
}
.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}
.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}
.splide--rtl {
  direction: rtl;
}
.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}
.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}
.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}
.splide__arrow:disabled {
  opacity: 0.3;
}
.splide__arrow:focus-visible {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide__arrow--prev {
  left: 1em;
}
.splide__arrow--prev svg {
  transform: scaleX(-1);
}
.splide__arrow--next {
  right: 1em;
}
.splide.is-focus-in .splide__arrow:focus {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}
.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}
.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}
.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}
.splide__pagination__page:focus-visible {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide.is-focus-in .splide__pagination__page:focus {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide__progress__bar {
  background: #ccc;
  height: 3px;
}
.splide__slide:focus {
  outline: 0;
}
@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: #0bf solid 3px;
    outline-offset: -3px;
  }
  .splide.is-focus-in .splide__slide:focus {
    outline: #0bf solid 3px;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}
.splide__toggle:focus-visible {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide.is-focus-in .splide__toggle:focus {
  outline: #0bf solid 3px;
  outline-offset: 3px;
}
.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}
.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}
.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}
.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}
.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}
.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}
.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}
.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}
.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}
.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}
.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}
.splide__pagination--ttb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  inset: 0 0.5em 0 auto;
  padding: 1em 0;
}
.nGY2 {
  box-sizing: content-box;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  -o-box-sizing: content-box;
  font-family:
    Helvetica Neue,
    Helvetica,
    Arial,
    sans-serif;
}
.nGY2 .ngy2_container {
  width: 100%;
  min-width: 100px;
  font-size: 1em;
  line-height: normal;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
  visibility: visible;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
}
@font-face {
  font-family: ngy2_icon_font;
  src:
    url(font/ngy2_icon_font.woff2?64889571) format("woff2"),
    url(font/ngy2_icon_font.woff?64889571) format("woff");
  font-weight: 400;
  font-style: normal;
}
.nGY2Icon-star:before {
  content: "";
}
.nGY2Icon-search:before {
  content: "";
}
.nGY2Icon-star-empty:before {
  content: "";
}
.nGY2Icon-video:before {
  content: "";
}
.nGY2Icon-videocam:before {
  content: "";
}
.nGY2Icon-picture:before {
  content: "";
}
.nGY2Icon-camera:before {
  content: "";
}
.nGY2Icon-camera-alt:before {
  content: "";
}
.nGY2Icon-ok:before {
  content: "";
}
.nGY2Icon-help:before {
  content: "";
}
.nGY2Icon-help-circled:before {
  content: "";
}
.nGY2Icon-home:before {
  content: "";
}
.nGY2Icon-link:before {
  content: "";
}
.nGY2Icon-link-ext:before {
  content: "";
}
.nGY2Icon-heart:before {
  content: "";
}
.nGY2Icon-ngy2_chevron-right:before {
  content: "";
}
.nGY2Icon-upload:before {
  content: "";
}
.nGY2Icon-reply-all:before {
  content: "";
}
.nGY2Icon-export:before {
  content: "";
}
.nGY2Icon-chat:before {
  content: "";
}
.nGY2Icon-attention:before {
  content: "";
}
.nGY2Icon-location:before {
  content: "";
}
.nGY2Icon-trash:before {
  content: "";
}
.nGY2Icon-folder-empty:before {
  content: "";
}
.nGY2Icon-folder-open-empty:before {
  content: "";
}
.nGY2Icon-menu:before {
  content: "";
}
.nGY2Icon-cog:before {
  content: "";
}
.nGY2Icon-cog-alt:before {
  content: "";
}
.nGY2Icon-wrench:before {
  content: "";
}
.nGY2Icon-lightbulb:before {
  content: "";
}
.nGY2Icon-resize-full:before {
  content: "";
}
.nGY2Icon-resize-small:before {
  content: "";
}
.nGY2Icon-left-open:before {
  content: "";
}
.nGY2Icon-right-open:before {
  content: "";
}
.nGY2Icon-arrows-cw:before {
  content: "";
}
.nGY2Icon-level-up:before {
  content: "";
}
.nGY2Icon-play:before {
  content: "";
}
.nGY2Icon-pause:before {
  content: "";
}
.nGY2Icon-ngy2_chevron-left:before {
  content: "";
}
.nGY2Icon-ellipsis-vert:before {
  content: "";
}
.nGY2Icon-toggle-off:before {
  content: "";
}
.nGY2Icon-toggle-on:before {
  content: "";
}
.nGY2Icon-check:before {
  content: "";
}
.nGY2Icon-check-empty:before {
  content: "";
}
.nGY2Icon-rocket:before {
  content: "";
}
.nGY2Icon-filter:before {
  content: "";
}
.nGY2Icon-magic:before {
  content: "";
}
.nGY2Icon-pinterest-squared:before {
  content: "";
}
.nGY2Icon-gplus-squared:before {
  content: "";
}
.nGY2Icon-facebook-squared:before {
  content: "";
}
.nGY2Icon-basket:before {
  content: "";
}
.nGY2Icon-ok-circled:before {
  content: "";
}
.nGY2Icon-user:before {
  content: "";
}
.nGY2Icon-ngy2_chevron_left3:before {
  content: "";
}
.nGY2Icon-ngy2_chevron_right3:before {
  content: "";
}
.nGY2Icon-zoom-out-1:before {
  content: "";
}
.nGY2Icon-ngy2_zoom_out2:before {
  content: "";
}
.nGY2Icon-ngy2_zoom_in2:before {
  content: "";
}
.nGY2Icon-ngy2_share2:before {
  content: "";
}
.nGY2Icon-ngy2_external2:before {
  content: "";
}
.nGY2Icon-ngy2_close2:before {
  content: "";
}
.nGY2Icon-ngy2_info2:before {
  content: "";
}
.nGY2Icon-ngy2_chevron_up2:before {
  content: "";
}
.nGY2Icon-ngy2_download2:before {
  content: "";
}
.nGY2Icon-mail-alt:before {
  content: "";
}
.nGY2Icon-circle-empty:before {
  content: "";
}
.nGY2Icon-tumblr-squared:before {
  content: "";
}
.nGY2Icon-twitter-squared:before {
  content: "";
}
.nGY2Icon-youtube-play:before {
  content: "";
}
.nGY2Icon-vkontakte:before {
  content: "";
}
.nGY2Icon-cw:before {
  content: "";
}
.nGY2Icon-ccw:before {
  content: "";
}
[class^="nGY2Icon-"] {
  margin-left: 0.2em;
  margin-right: 0.3em;
  font-family: ngy2_icon_font;
  font-style: normal;
  font-weight: 400;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2Navigationbar {
  margin: 5px 0;
  padding: 5px 0;
  display: none;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2Navigationbar .nGY2NavigationbarItem {
  margin: 5px 2px;
  padding: 5px 8px;
  white-space: nowrap;
  cursor: pointer;
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  visibility: "hidden";
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2Gallery,
.nGY2 .nGY2GallerySub {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}
.nGY2Navigationbar .oneItem {
  margin: 0 5px;
  white-space: nowrap;
  vertical-align: middle;
  display: inline-block;
}
.nGY2 .nGY2Gallery {
  text-align: center;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GallerySub {
  perspective: 900px;
  text-align: left;
  width: 100%;
  height: 100%;
  display: inline-block;
  z-index: 1;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnail,
.nGY2 .nGY2GThumbnailStack {
  display: inline-block;
  position: absolute;
  box-sizing: border-box;
  border: 0 solid #000;
  padding: 0;
  overflow: hidden;
  cursor: pointer;
}
.nGY2 .nGY2GThumbnail {
  background-color: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nanogallery_gallerytheme_custom_gallery_1 .nGY2GThumbnail {
  background-color: #fff;
}
.nGY2 .nGY2GThumbnailStack {
  background-color: #888;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailSub {
  width: 100%;
  height: 100%;
  display: block;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  border: 0 solid #000;
  margin: 0;
  padding: 0;
  overflow: hidden;
}
.nGY2 .nGY2GThumbnailSubSelected {
  -webkit-transform: scale(0.9);
  -ms-transform: scale(0.9);
  transform: scale(0.9);
}
.nGY2 .nGY2GThumbnailImage {
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailImg {
  background: url(data:image/gif;base64,R0lGODlhEAAQAIAAAP///////yH5BAEKAAEALAAAAAAQABAAAAIOjI+py+0Po5y02ouzPgUAOw==)
    center no-repeat;
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  vertical-align: bottom;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailAnnotationOLD_NO_MORE_USED {
  background: #222222bf;
  opacity: 1;
  text-align: left;
  left: 0;
  right: 0;
  padding: 1px;
  position: absolute;
  min-height: 18px;
  overflow: hidden;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailCustomLayer,
.nGY2 .nGY2GThumbnailLabel {
  display: block;
  box-sizing: border-box;
  left: 0;
  position: absolute;
  right: 0;
}
.nGY2 .nGY2GThumbnailCustomLayer {
  top: 0;
  bottom: 0;
  overflow: hidden;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailLabel {
  background: #222222bf;
  padding: 4px;
  margin: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailAlbumTitle,
.nGY2 .nGY2GThumbnailImageTitle {
  color: #fff;
  margin: 5px 1px 1px;
  padding: 0;
  left: 0;
  right: 0;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  text-shadow:
    #000 1px 0 0,
    #000 1px 1px 0,
    #000 1px -1px 0,
    #000 -1px 1px 0,
    #000 -1px 0 0,
    #000 -1px -1px 0,
    #000 0 1px 0,
    #000 0 -1px 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailDescription {
  clear: both;
  margin: 1px 1px 3px;
  padding: 0;
  color: #aaa;
  white-space: nowrap;
  left: 0;
  right: 0;
  font-size: 0.8em;
  text-shadow:
    #000 1px 0 0,
    #000 1px 1px 0,
    #000 1px -1px 0,
    #000 -1px 1px 0,
    #000 -1px 0 0,
    #000 -1px -1px 0,
    #000 0 1px 0,
    #000 0 -1px 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailIcon,
.nGY2 .nGY2GThumbnailIconsFullThumbnail {
  color: #fff;
  text-shadow:
    #000 1px 0 0,
    #000 1px 1px 0,
    #000 1px -1px 0,
    #000 -1px 1px 0,
    #000 -1px 0 0,
    #000 -1px -1px 0,
    #000 0 1px 0,
    #000 0 -1px 0;
}
.nGY2 .nGY2GThumbnailIcons {
  margin: 0;
  position: absolute;
  display: inline-block;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailIconsFullThumbnail {
  font-size: 1.8em;
  padding: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translate(-50%) translateY(-50%);
  display: inline-block;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailIconText,
.nGY2 .nGY2GThumbnailIconTextBadge {
  position: relative;
  display: inline-block;
  margin: 0;
  vertical-align: middle;
}
.nGY2 .nGY2GThumbnailIcon {
  display: inline-block;
  padding: 4px;
  margin: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailIconTextBadge {
  background-color: #fff;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailIconText {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GThumbnailAlbumUp i {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translate(-50%);
}
.nGY2 .nGY2GThumbnailAlbumUp {
  color: #eee;
  font-size: 1.2em;
  inset: 0;
  display: table;
  width: 100%;
  text-align: center;
  position: absolute;
  margin: auto;
  padding: 0;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2GalleryBottom {
  margin: 0;
  padding: 0;
  text-align: center;
  position: relative;
  overflow: hidden;
  white-space: nowrap;
}
.nGY2 .nGY2GalleryMoreButton,
.nGY2 .nGY2GalleryMoreButtonAnnotation,
.nGY2 .nGY2GalleryPagination,
.nGY2 .nGY2GalleryPaginationDot {
  margin: 10px auto 5px;
  text-align: center;
  position: relative;
  white-space: nowrap;
  overflow: hidden;
}
.nGY2 .nGY2GalleryMoreButton {
  padding: 4px;
  display: inline-block;
  cursor: pointer;
}
.nGY2 .nGY2GalleryMoreButtonAnnotation {
  border: 1px solid #fff;
  padding: 8px 20px;
  display: inline-block;
}
.nGY2 .nGY2GalleryPagination,
.nGY2 .nGY2GalleryPaginationDot {
  padding: 4px;
}
.nGY2 .nGY2PaginationNext,
.nGY2 .nGY2PaginationPrev,
.nGY2 .nGY2paginationItem,
.nGY2 .nGY2paginationItemCurrentPage {
  margin: 10px 4px;
  padding: 5px 8px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background: #111;
  white-space: nowrap;
  cursor: pointer;
  vertical-align: middle;
  display: inline-block;
}
.nGY2 .nGY2paginationItemCurrentPage {
  background: #333;
}
.nGY2 .nGY2paginationDot,
.nGY2 .nGY2paginationDotCurrentPage {
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  background: #444;
  border-radius: 50%;
  margin: 12px 5px;
  white-space: nowrap;
  cursor: pointer;
  vertical-align: middle;
  display: inline-block;
  opacity: 0.5;
}
.nGY2 .nGY2paginationDotCurrentPage {
  background: #fff;
  opacity: 1;
}
.nGY2 .nGY2paginationRectangle,
.nGY2 .nGY2paginationRectangleCurrentPage {
  width: 30px;
  border: 1px solid #fff;
  height: 0;
  background: #444;
  margin: 5px 1px;
  white-space: nowrap;
  cursor: pointer;
  vertical-align: middle;
  display: inline-block;
  opacity: 0.5;
}
.nGY2 .nGY2paginationRectangleCurrentPage {
  background: #fff;
  opacity: 1;
}
.nGY2Popup {
  position: fixed;
  color: #000;
  inset: 0;
  background: #00000080;
}
.nGY2PopupContent,
.nGY2PopupContentCenter,
.nGY2PopupContentLeft,
.nGY2PopupContentRight {
  position: fixed;
  text-align: left;
  top: 50%;
  left: 50%;
  width: 50%;
  padding: 15px 30px;
  height: auto;
  background: #fff;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translate(-50%) translateY(-50%);
}
.nGY2PopupContentCenter {
  text-align: center;
}
.nGY2PopupTitle {
  font-size: 1.5em;
  border-bottom: 4px solid #888;
  padding: 0 0 5px;
  margin-bottom: 10px;
}
.nGY2PopupCloseButton {
  font-size: 1.5em;
  cursor: pointer;
  text-align: right;
}
.nGY2PopupOneItem {
  padding: 10px;
  font-size: 2em;
  cursor: pointer;
  display: inline-block;
}
.nGY2PopupOneItemText {
  padding: 10px;
  font-size: 1.2em;
  cursor: pointer;
  display: block;
}
@media only screen and (max-device-width: 480px) {
  .nGY2PopupContent {
    width: 85% !important;
    padding: 5px 10px !important;
  }
}
.nGY2PortInfo {
  padding: 3px !important;
  font-size: 14px !important;
  color: #ff0075 !important;
  text-align: center !important;
  z-index: 0 !important;
  text-transform: lowercase !important;
  cursor: pointer !important;
}
.nGY2PortInfo a,
.nGY2PortInfo a:active,
.nGY2PortInfo a:hover,
.nGY2PortInfo > a:link,
.nGY2PortInfo > a:visited {
  color: #ff0075 !important;
  text-decoration: none !important;
}
.nGY2 .nGY2ViewerContainer {
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.nGY2 .nGY2Viewer {
  display: block;
  visibility: visible;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 1;
  background-color: #010101d9;
  text-align: center;
  clear: both;
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
}
.nGY2 .nGY2ViewerLogo {
  text-align: center;
  float: left;
  position: relative;
  top: 50px;
  left: 5px;
  padding: 2px;
  background: url(nanogallery2_logo.png) center no-repeat;
  display: block;
  height: 74px;
  width: 147px;
}
.nGY2 .nGY2ViewerContent,
.nGY2 .nGY2ViewerMediaPan {
  position: absolute;
  box-sizing: border-box;
  user-select: none;
}
.nGY2 .nGY2ViewerContent {
  min-width: 40px;
  min-height: 40px;
  clear: both;
  user-drag: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2ViewerMediaPan {
  transform-origin: 50% 50% 0;
  visibility: visible;
  opacity: 1;
  display: inline-block;
  padding: 0;
  inset: 0;
  margin: auto;
  zoom: 1;
  user-drag: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2ViewerMedia,
.nGY2 .nGY2ViewerMediaLoaderHidden {
  visibility: visible;
  position: absolute;
  zoom: 1;
  box-sizing: border-box;
  inset: 0;
  margin: auto;
}
.nGY2 .nGY2ViewerMedia {
  max-width: none;
  opacity: 1;
  will-change: transform;
  transform: translateZ(0);
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2ViewerMediaLoaderDisplayed {
  visibility: visible;
  opacity: 1;
  position: absolute;
  inset: 0;
  margin: auto;
  zoom: 1;
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  width: 50px;
  height: 50px;
}
.nGY2 .nGY2ViewerMediaLoaderDisplayed:before {
  inset: 0;
  margin: auto;
  content: "";
  display: block;
  position: absolute;
  border-width: 7px;
  border-style: solid;
  border-radius: 50%;
  width: 38px;
  height: 38px;
  animation: nGY2-spinner-rotate-animation 1s linear 0s infinite;
  border-color: #444 #23cb99 #23cb99 #444;
}
.nGY2 .nGY2ViewerMediaLoaderDisplayed:after {
  content: "";
  display: block;
  position: absolute;
  border-width: 4px;
  border-style: solid;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  inset: 0;
  margin: auto;
  animation: nGY2-spinner-anti-rotate-animation 0.85s linear 0s infinite;
  border-color: #333 #23cb99 #23cb99 #333;
}
@keyframes nGY2-spinner-rotate-animation {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes nGY2-spinner-anti-rotate-animation {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(-360deg);
  }
}
.nGY2 .nGY2ViewerMediaLoaderHidden {
  opacity: 0;
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  background-image: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
}
.nGY2 .nGY2ViewerAreaNext,
.nGY2 .nGY2ViewerAreaPrevious {
  color: #fff;
  display: block;
  font-size: 2em;
  bottom: 0;
  margin-top: -25px;
  cursor: pointer;
  opacity: 1;
  position: absolute;
  z-index: 1000;
  width: 40%;
  color: #aaa;
}
.nGY2 .nGY2ViewerAreaNext:hover,
.nGY2 .nGY2ViewerAreaPrevious:hover {
  color: #fff;
}
.nGY2 .nGY2ViewerContent .imgCurrent {
  cursor: pointer;
}
.nGY2 .nGY2ViewerAreaPrevious {
  padding: 10px 0 10px 10px;
  left: 0;
  text-align: left;
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
}
.nGY2 .nGY2ViewerAreaPrevious > i {
  margin-left: 0;
}
.nGY2 .nGY2ViewerAreaNext {
  padding: 10px 10px 10px 0;
  right: 0;
  text-align: right;
  user-drag: none;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-drag: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
}
.nGY2 .nGY2ViewerAreaNext > i {
  margin-right: 0;
}
.nGY2 .toolbarContainer {
  left: 0;
  right: 0;
  text-align: center;
  display: inline-block;
  position: absolute;
  width: 100%;
  margin-bottom: 20px;
}
.nGY2 .toolbar {
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
  padding: 2px 0;
  margin: 1px;
}
.nGY2 .toolbarBackground {
  background: #040404b3;
}
.nGY2 .nGY2ViewerToolsTopLeft,
.nGY2 .nGY2ViewerToolsTopRight {
  color: #ddd;
  background: #0003;
  top: 5px;
  position: absolute;
  cursor: pointer;
  opacity: 1;
}
.nGY2 .nGY2ViewerToolsTopLeft {
  left: 5px;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
}
.nGY2 .nGY2ViewerToolsTopRight {
  right: 5px;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
}
.nGY2 .nGY2ViewerToolsTopRight:hover .closeButton {
  opacity: 0.8;
}
.nGY2 .toolbar .ngbt {
  font-size: 1.5em;
  display: table-cell;
  cursor: pointer;
  padding: 2px 5px;
  vertical-align: middle;
}
.nGY2 .toolbar .label,
.nGY2 .toolbar .label .title,
.nGY2 .toolbar .pageCounter {
  font-size: 1em;
  vertical-align: middle;
  overflow: hidden;
}
.nGY2 .ngy2viewerToolAction {
  opacity: 1;
}
.nGY2 .toolbar .pageCounter {
  display: table-cell;
  margin: auto;
}
.nGY2 .toolbar .label {
  padding: 3px 10px;
  border-left: 0 solid #000;
  display: table-cell;
  text-align: left;
  background-color: initial;
}
.nGY2 .toolbar .label .title {
  margin: auto;
}
.nGY2 .toolbar .label .description {
  font-size: 0.8em;
  display: table-row;
  vertical-align: middle;
  overflow: hidden;
  color: #aaa;
}
.nGY2ConsoleParent {
  visibility: hidden;
  height: 0;
  background: #111;
  color: #e00;
  padding: 0;
  margin: 2px;
}
.nGY2ConsoleParent p {
  color: #e00;
  padding: 1px;
  margin: 0;
}
.nGY2 .nanoGalleryLBar,
.nGY2 .nanoGalleryLBarOff {
  position: relative;
  width: 100%;
  margin: 0 0 1px;
  background-color: #556;
  height: 2px;
}
.nGY2.unselectable {
  -moz-user-select: none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}
.nGY2 .nanoGalleryLBarOff {
  visibility: hidden;
}
.nGY2 .nanoGalleryLBar {
  visibility: visible;
}
.nGY2 .nanoGalleryLBar > div {
  position: absolute;
  width: 50px;
  height: 2px;
  top: 0;
  opacity: 0.7;
}
.nGY2 .nanoGalleryLBar > div:nth-child(1) {
  -webkit-animation: nanoGalleryLBarAnim 2s -0.2s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -moz-animation: nanoGalleryLBarAnim 2s -0.2s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -ms-animation: nanoGalleryLBarAnim 2s -0.2s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -o-animation: nanoGalleryLBarAnim 2s -0.2s infinite cubic-bezier(0, 0.6, 0.9, 0);
  animation: nanoGalleryLBarAnim 2s -0.2s infinite cubic-bezier(0, 0.6, 0.9, 0);
  background: #111;
}
.nGY2 .nanoGalleryLBar > div:nth-child(2) {
  -webkit-animation: nanoGalleryLBarAnim 2s -0.4s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -moz-animation: nanoGalleryLBarAnim 2s -0.4s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -ms-animation: nanoGalleryLBarAnim 2s -0.4s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -o-animation: nanoGalleryLBarAnim 2s -0.4s infinite cubic-bezier(0, 0.6, 0.9, 0);
  animation: nanoGalleryLBarAnim 2s -0.4s infinite cubic-bezier(0, 0.6, 0.9, 0);
  background: #333;
}
.nGY2 .nanoGalleryLBar > div:nth-child(3) {
  -webkit-animation: nanoGalleryLBarAnim 2s -0.6s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -moz-animation: nanoGalleryLBarAnim 2s -0.6s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -ms-animation: nanoGalleryLBarAnim 2s -0.6s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -o-animation: nanoGalleryLBarAnim 2s -0.6s infinite cubic-bezier(0, 0.6, 0.9, 0);
  animation: nanoGalleryLBarAnim 2s -0.6s infinite cubic-bezier(0, 0.6, 0.9, 0);
  background: #ccd;
}
.nGY2 .nanoGalleryLBar > div:nth-child(4) {
  -webkit-animation: nanoGalleryLBarAnim 2s -0.8s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -moz-animation: nanoGalleryLBarAnim 2s -0.8s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -ms-animation: nanoGalleryLBarAnim 2s -0.8s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -o-animation: nanoGalleryLBarAnim 2s -0.8s infinite cubic-bezier(0, 0.6, 0.9, 0);
  animation: nanoGalleryLBarAnim 2s -0.8s infinite cubic-bezier(0, 0.6, 0.9, 0);
  background: #777;
}
.nGY2 .nanoGalleryLBar > div:nth-child(5) {
  -webkit-animation: nanoGalleryLBarAnim 2s -1s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -moz-animation: nanoGalleryLBarAnim 2s -1s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -ms-animation: nanoGalleryLBarAnim 2s -1s infinite cubic-bezier(0, 0.6, 0.9, 0);
  -o-animation: nanoGalleryLBarAnim 2s -1s infinite cubic-bezier(0, 0.6, 0.9, 0);
  animation: nanoGalleryLBarAnim 2s -1s infinite cubic-bezier(0, 0.6, 0.9, 0);
  background: #ddd;
}
@-webkit-keyframes nanoGalleryLBarAnim {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
@-moz-keyframes nanoGalleryLBarAnim {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
@-ms-keyframes nanoGalleryLBarAnim {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
@-o-keyframes nanoGalleryLBarAnim {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
@keyframes nanoGalleryLBarAnim {
  0% {
    left: 10%;
  }
  to {
    left: 90%;
  }
}
.mt-5 {
  margin-top: 50px;
}
.gallery .nGY2GThumbnail:hover {
  transform: scale(0.95);
  transition: transform 0.6s;
}
.gallery .nGY2GThumbnail {
  transition: transform 0.6s;
}
.nGY2 {
  font-family: montserrat, sans-serif;
}
.nGY2Viewer .ngy2viewerToolAction .fa {
  color: #aaa;
}
.nGY2Viewer .ngy2viewerToolAction:hover .fa {
  color: #fff;
}
.nGY2Viewer .ngy2viewerToolAction:hover {
  opacity: 1 !important;
}
.nGY2 .nGY2GThumbnail {
  background-color: #fff;
}
html,
body {
  margin: 0;
  width: 100%;
  height: 100%;
}
body:not(:has(.UtilityHeader)) {
  .Header,
  .UtilityHeader {
    --utility-header: 0rem;
  }
}
.UtilityHeader {
  @media (max-width: 74.999rem) {
    display: none;
  }
  @media (min-width: 75rem) {
    position: relative;
    top: 0;
    height: var(--utility-header, 3.5rem);
    padding: 0 var(--gutter);
    z-index: 20;
    transition: top var(--transition-base);
    background-color: var(--purple-dark);
  }
}
.UtilityHeader__menu {
  margin-right: auto;
}
.UtilityHeader__nav {
  display: flex;
  list-style-type: none;
  padding: 0;
  margin: 0;
  gap: 1rem;
  li a {
    display: block;
    white-space: nowrap;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    color: var(--white);
    &:hover {
      text-decoration: underline;
    }
  }
}
.UtilityHeader__wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0 var(--gutter);
  padding-block: 0.5rem;
  border-top: 0;
}
.UtilityHeader__actions-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.75rem;
}
.UtilityHeader__actions {
  list-style-type: none;
  padding: 0;
  margin: 0;
  gap: 0.75rem;
  a:not([class]) {
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    color: var(--white);
    &:hover {
      text-decoration: underline;
    }
  }
}
.Header {
  container-type: inline-size;
  container-name: header;
  position: sticky;
  top: 0;
  z-index: var(--z-header);
  transform: translateY(0);
  &[data-sticky] {
    box-shadow: var(--shadow);
  }
  @media (max-width: 74.999rem) {
    position: sticky;
    height: var(--header-small, 5.5rem);
  }
  @media (min-width: 75rem) {
    transition: transform var(--transition-base);
    &[data-sticky] {
      transform: translateY(calc(-1 * var(--utility-header, 3.5rem)));
      transition: transform var(--transition-base);
    }
    [data-sticky="false"] & {
      transform: translateY(calc(-1 * var(--utility-header, 3.5rem)));
      transition: transform var(--transition-base);
    }
    [data-scroll-up] & {
      transform: translateY(0);
    }
  }
}
.Header__wrapper {
  --background: var(--purple-dark);
  container-type: inline-size;
  container-name: header-wrapper;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  height: var(--header-small, 5.5rem);
  background: var(--background);
  position: relative;
  padding: 0 var(--gutter);
  overflow: visible;
  @media (min-width: 30rem) {
    gap: 0.75rem;
  }
  @media (min-width: 45rem) {
    gap: 1rem;
  }
  @media (min-width: 75rem) and (max-width: 84.999rem) {
    padding: 0 1.5rem;
  }
  &:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(var(--gutter) * -1);
    right: 0;
    width: 100%;
    height: 0.0625rem;
    margin-inline: var(--gutter);
    background: #fff3;
  }
  @media (min-width: 75rem) {
    --background: var(--purple-dark);
    gap: 0;
    height: var(--header-large, 5.625rem);
    transition: background var(--transition-base);
    &:before {
      height: 0.0625rem;
      background: #fff3;
      transition: background var(--transition-base);
    }
  }
}
.Header__brand-logo {
  --outline-color: var(--yellow-primary);
  display: block;
  flex-shrink: 1;
  width: auto;
  max-width: 12rem;
  min-width: 7rem;
  position: relative;
  @media (max-width: 74.999rem) {
    background: var(--yellow-primary);
    padding: 0.75rem;
    margin-left: calc(-1 * var(--gutter));
    min-width: 6rem;
    max-width: 10rem;
    height: var(--header-small, 5.5rem);
    display: flex;
    align-items: center;
  }
  @media (min-width: 30rem) and (max-width: 74.999rem) {
    min-width: 7rem;
    max-width: 11rem;
    padding: 1rem;
  }
  @media (min-width: 45rem) and (max-width: 74.999rem) {
    min-width: 8rem;
    max-width: 12rem;
  }
  @media (min-width: 75rem) {
    flex-shrink: 1;
    max-width: 14rem;
    min-width: 9rem;
    background: none;
    padding: 0.5rem 1rem 1rem 0;
    margin-left: 0;
    display: flex;
    align-items: center;
  }
  @media (min-width: 85rem) {
    flex-shrink: 0;
    min-width: 10rem;
  }
  &:focus-visible {
    outline: 0.1875rem solid var(--yellow-primary);
    outline-offset: -0.1875rem;
    z-index: 1;
  }
  &:not(:focus-visible) {
    outline: 0;
  }
  img,
  picture {
    display: block;
    width: 100%;
    height: auto;
    max-height: calc(var(--header-small, 5.5rem) - 1rem);
    object-fit: contain;
    object-position: left center;
    @media (min-width: 75rem) {
      max-height: calc(var(--header-large, 5.625rem) - 1rem);
    }
  }
}
.Header__cta-button {
  @media (max-width: 74.999rem) {
    display: none;
  }
  @media (min-width: 75rem) {
    margin-bottom: 0;
    margin-left: 2rem;
    background: var(--yellow-primary);
    color: var(--purple-dark);
    &:hover {
      background: var(--purple-dark);
      color: var(--white);
      box-shadow: 0 0 0 1.5px var(--yellow-primary);
    }
    [data-sticky] & {
      display: none;
    }
  }
}
.contents {
  display: contents;
}
@media (max-width: 74.999rem) {
  .menu-toggle-wrapper {
    order: 1;
    margin-left: auto;
  }
  .search-toggle-wrapper {
    order: 2;
    margin-left: 0.5rem;
  }
}
.Header__search-toggle,
.Header__menu-toggle {
  --outline-color: var(--white);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--white);
  font-size: 1rem;
  font-weight: 500;
  flex-direction: row-reverse;
  flex-shrink: 0;
  @media (max-width: 74.999rem) {
    color: var(--yellow-primary);
  }
}
.Header__menu-text,
.Header__search-text {
  @media (max-width: 74.999rem) {
    display: none;
  }
}
.Header__search-toggle {
  @media (min-width: 75rem) {
    flex-direction: row-reverse;
  }
}
.Header__search-icon,
.Header__menu-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  background: var(--white);
  @media (max-width: 74.999rem) {
    background: var(--yellow-primary);
  }
}
.Header__search-icon {
  mask: url(search.svg) center / contain no-repeat;
}
.Header__search-toggle {
  @media (max-width: 74.999rem) {
    margin-left: 0.5rem;
  }
  @media (min-width: 75rem) {
    margin-left: 0.5rem;
    padding: 0 var(--gutter) 0 1rem;
    height: 100%;
    margin-right: calc(-1 * var(--gutter));
    transition:
      color var(--transition-base),
      background var(--transition-base);
    border-radius: 0;
    [data-sticky] & {
      display: none;
    }
    &[aria-expanded="true"] {
      background: var(--purple-dark);
      color: var(--yellow-primary);
    }
  }
  @media (min-width: 75rem) and (max-width: 84.999rem) {
    padding: 0 1.5rem 0 0.75rem;
    margin-right: -1.5rem;
  }
  &[aria-expanded="true"] .Header__search-icon {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
  }
  &[aria-expanded="true"] .Header__search-icon {
    @media (min-width: 75rem) {
      background: var(--yellow-primary);
    }
  }
  &[aria-expanded="true"] .Header__search-text {
    @media (min-width: 75rem) {
      color: var(--yellow-primary);
    }
  }
}
.Header__menu-icon {
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cline x1='3' y1='12' x2='21' y2='12'/%3E%3Cline x1='3' y1='6' x2='21' y2='6'/%3E%3Cline x1='3' y1='18' x2='21' y2='18'/%3E%3C/svg%3E")
    center / contain no-repeat;
}
.Header__menu-toggle {
  @media (max-width: 74.999rem) {
    margin-left: auto;
  }
  @media (min-width: 75rem) {
    display: none;
  }
  &[aria-expanded="true"] .Header__menu-icon {
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
  }
}
.Header__search {
  position: absolute;
  inset: 5.5rem 0 auto;
  height: calc(100dvh - 3.75rem);
  padding: 1.5rem;
  transition:
    opacity var(--transition-base),
    visibility var(--transition-base);
  opacity: 0;
  visibility: hidden;
  overflow: auto;
  overscroll-behavior: contain;
  align-items: center;
  top: 100%;
  height: auto;
  background: var(--purple-dark);
  color: var(--white);
  border-top: 0;
  border-radius: 0;
  box-shadow:
    0 4px 6px -1px #0000001a,
    0 2px 4px -1px #0000000f;
  @media (min-width: 75rem) {
    left: 0;
    right: 0;
    padding: var(--gutter);
  }
  form {
    width: 100%;
  }
  [aria-expanded="true"] + & {
    opacity: 1;
    visibility: visible;
  }
}
.Header__input-wrapper {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 1rem;
  background: transparent;
  border-radius: 0.25rem;
  padding: 0;
  border: 0;
}
.Header__input {
  flex: 1;
  background: var(--purple-dark) !important;
  border: 2px solid #cbcffb !important;
  border-radius: 0.125rem;
  padding: 2rem 1rem;
  margin-bottom: 0;
  font-family: Geist, var(--font-primary);
  font-size: 1rem;
  font-style: normal;
  font-weight: 300;
  line-height: 150%;
  color: var(--white);
  &::placeholder {
    font-family: Geist, var(--font-primary);
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 150%;
    color: var(--white);
    opacity: 0.8;
  }
  &:focus {
    outline: none;
  }
}
.Header__submit {
  --outline-color: var(--yellow-primary);
  display: grid;
  place-items: center;
  padding: 0.75rem 1.5rem;
  border: 0;
  border-radius: 0.125rem;
  background: var(--yellow-primary);
  color: var(--purple-dark);
  cursor: pointer;
  transition:
    background var(--transition-base),
    box-shadow var(--transition-base);
  flex-shrink: 0;
  align-self: stretch;
  position: relative;
  &:before {
    content: "";
    display: block;
    width: 1.25rem;
    height: 1.25rem;
    background: var(--purple-dark);
    mask: url(search.svg) center / contain no-repeat;
    -webkit-mask: url(search.svg) center / contain no-repeat;
    transition: background var(--transition-base);
  }
  &:hover {
    background: var(--purple-dark);
    box-shadow: 0 0 0 1.5px var(--yellow-primary);
    &:before {
      background: var(--white);
    }
  }
}
.Header__menu {
  --background: var(--purple-dark);
  --color: var(--white);
  --heading: var(--white);
  --link: var(--white);
  @media (max-width: 74.999rem) {
    position: absolute;
    inset: 100% 0 auto;
    height: calc(100dvh - var(--header-small, 5.5rem));
    padding: 0 1.5rem 1.5rem;
    transition:
      opacity var(--transition-base),
      visibility var(--transition-base);
    background: var(--purple-dark);
    color: var(--white);
    opacity: 0;
    visibility: hidden;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    z-index: 100;
    scrollbar-width: none;
    &::-webkit-scrollbar {
      display: none;
    }
    [aria-expanded="true"] + & {
      opacity: 1;
      visibility: visible;
    }
    .Buttons {
      display: flex;
      flex-direction: column;
      gap: 0.75rem;
      margin: 2.5rem 0;
      .button {
        background-color: var(--yellow-primary);
        color: var(--purple-dark);
        padding: 1rem 1.25rem;
        &:hover,
        &:focus {
          background-color: var(--purple-dark);
          color: var(--yellow-primary);
          box-shadow: 0 0 0 1.5px var(--yellow-primary);
          border-radius: 0.05rem;
        }
      }
    }
  }
  @media (min-width: 75rem) {
    display: contents;
    .Buttons {
      display: none;
      visibility: hidden;
    }
  }
}
.Header__sticky-cta {
  gap: 1.5rem;
  align-items: center;
  .button {
    margin-bottom: 0;
    min-height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    @media (max-width: 40rem) {
      min-height: 3.5rem;
    }
  }
}
.Header__sticky-cta--mobile {
  @media (max-width: 74.999rem) {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: row;
    padding: 1rem var(--gutter);
    background: var(--purple-dark);
    box-shadow:
      0 -4px 6px -1px #0000001a,
      0 -2px 4px -1px #0000000f;
    z-index: 100;
    gap: 0.75rem;
    transition:
      transform var(--transition-base),
      opacity var(--transition-base);
    body:has(.Header__menu-toggle[aria-expanded="true"]) & {
      transform: translateY(100%);
      opacity: 0;
    }
    .button {
      flex: 1;
      background: var(--yellow-primary);
      color: var(--purple-dark);
      &:hover {
        background: var(--purple-dark);
        color: var(--white);
        box-shadow: 0 0 0 1.5px var(--yellow-primary);
      }
    }
  }
  @media (min-width: 75rem) {
    display: none;
  }
}
.Header__sticky-cta--desktop {
  @media (max-width: 74.999rem) {
    display: none;
  }
  @media (min-width: 75rem) {
    display: none;
    margin-left: auto;
    [data-sticky] & {
      display: flex;
    }
    .button {
      background: var(--yellow-primary);
      color: var(--purple-dark);
      &:hover {
        background: var(--purple-dark);
        color: var(--white);
        box-shadow: 0 0 0 1.5px var(--yellow-primary);
      }
    }
  }
}
.Header__nav {
  margin: 0;
  padding: 0;
  list-style: none;
  ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  p {
    margin: 0;
  }
  a {
    text-decoration: none;
    color: var(--white);
  }
  @media (max-width: 74.999rem) {
    border-bottom: 0.0625rem solid var(--purple-light);
    width: calc(100% + 3rem);
    margin-inline: -1.5rem;
    padding-inline: 1.5rem;
  }
  @media (min-width: 75rem) {
    display: flex;
    gap: 1.5rem;
    margin-left: auto;
    [data-sticky] & {
      display: none;
    }
  }
}
.Header__translate {
  @media (max-width: 74.999rem) {
    outline: none;
    * {
      outline: none;
    }
  }
}
.google-translate #google_translate_element .goog-te-combo {
  outline: none !important;
  box-shadow: none !important;
  &:focus,
  &:active,
  &:focus-visible {
    outline: none !important;
    box-shadow: none !important;
  }
}
.Header__mega-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  @media (max-width: 74.999rem) {
    width: calc(100% + 3rem);
    padding-block: 1rem;
    padding-inline: 1.5rem;
    margin-inline: -1.5rem;
    border-top: 0.0625rem solid var(--purple-light);
    transition: background-color var(--transition-base);
    li:first-child > & {
      border-top: 0;
    }
    &:hover {
      background-color: #ffffff1a;
    }
  }
  @media (min-width: 75rem) {
    height: 3.75rem;
    padding-inline: 1rem;
  }
  li:has(> &) {
    @media (min-width: 75rem) {
      margin-inline: -1rem;
    }
  }
}
.Header__mega-toggle-link {
  display: inline-flex;
  align-items: center;
  color: var(--white);
  text-decoration: none;
  cursor: pointer;
  transition: text-decoration var(--transition-base);
  @media (max-width: 74.999rem) {
    font-size: 1.25rem;
    font-weight: 700;
  }
  @media (min-width: 75rem) {
    font-weight: 700;
    font-size: 0.875rem;
    white-space: nowrap;
  }
  @media (min-width: 90rem) {
    font-size: 1rem;
  }
  &:hover {
    text-decoration: underline;
    text-decoration-thickness: 0.125rem;
    text-underline-offset: 0.25em;
    @media (max-width: 74.999rem) {
      text-decoration: none;
    }
  }
}
.Header__mega-toggle-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--white);
  flex-shrink: 0;
  &:after {
    content: "";
    display: block;
    width: 1rem;
    height: 0.625rem;
    background: var(--white);
    mask: url(arrow-down.svg) center / contain no-repeat;
    -webkit-mask: url(arrow-down.svg) center / contain no-repeat;
    transition: transform var(--transition-base);
  }
  &:hover:after {
    transform: scale(1.1);
  }
  &[aria-expanded="true"]:after {
    transform: rotate(180deg);
  }
  &[aria-expanded="true"]:hover:after {
    transform: rotate(180deg) scale(1.1);
  }
}
.Header__nav > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: var(--white);
  &:after {
    content: "";
    flex-shrink: 0;
    width: 1rem;
    height: 0.625rem;
    transition: transform var(--transition-base);
    background: var(--white);
    mask: url(arrow-down.svg) center / contain no-repeat;
    @media (max-width: 74.999rem) {
      background: var(--yellow-primary);
    }
  }
  &:hover {
    text-decoration: underline;
    text-decoration-thickness: 0.125rem;
    text-underline-offset: 0.25em;
    @media (max-width: 74.999rem) {
      text-decoration: none;
    }
  }
  @media (max-width: 74.999rem) {
    width: 100%;
    padding-block: 1rem;
    border-top: 0.0625rem solid var(--purple-light);
    font-size: 1.25rem;
    font-weight: 700;
    text-align: left;
    li:first-child > & {
      border-top: 0;
    }
  }
  @media (min-width: 75rem) {
    --outline-color: var(--white);
    position: relative;
    height: 3.75rem;
    padding-inline: 1rem;
    outline-offset: -0.25rem;
    white-space: nowrap;
    font-weight: 700;
    font-size: 0.875rem;
    color: var(--white);
    text-align: center;
    &:after {
      background: var(--white);
    }
  }
  @media (min-width: 90rem) {
    font-size: 1rem;
  }
  li:has(> &) {
    @media (min-width: 75rem) {
      margin-inline: -1rem;
    }
  }
}
.Header__mega-toggled-content {
  @media (max-width: 74.999rem) {
    display: grid;
    grid-template: minmax(0, 0fr) / 100%;
    overflow: hidden;
    visibility: hidden;
    transition:
      grid-template-rows var(--transition-base),
      visibility var(--transition-base);
  }
  @media (min-width: 75rem) {
    opacity: 0;
    visibility: hidden;
    transition:
      opacity var(--transition-base),
      visibility var(--transition-base);
  }
  .Header__mega-toggle:has([aria-expanded="true"]) + & {
    @media (max-width: 74.999rem) {
      grid-template-rows: minmax(0, 1fr);
      visibility: visible;
    }
    @media (min-width: 75rem) {
      opacity: 1;
      visibility: visible;
    }
  }
}
.Header__mega {
  @media (max-width: 74.999rem) {
    margin-bottom: 1rem;
    min-height: 0;
    a {
      color: var(--white) !important;
    }
  }
  @media (min-width: 75rem) {
    display: block;
    padding: var(--gutter);
    position: absolute;
    inset: 100% 0 auto;
    background: var(--purple-dark);
    color: var(--white);
    border-radius: 0;
    box-shadow:
      0 4px 6px -1px #0000001a,
      0 2px 4px -1px #0000000f;
  }
}
.Header__mega-header {
  @media (max-width: 74.999rem) {
    display: none;
  }
  display: block;
  h2 {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--white);
    margin: 0 0 0.25rem;
    text-decoration: underline;
    text-decoration-thickness: 0.125rem;
    text-underline-offset: 0.125em;
    transition: color var(--transition-base);
  }
}
.Header__mega-links {
  @media (max-width: 74.999rem) {
    margin-left: 1.5rem;
  }
  ul {
    list-style: none;
    padding: 0;
    margin: 0;
    @media (min-width: 75rem) {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      column-gap: var(--gutter);
    }
  }
  li {
    margin: 0;
    @media (min-width: 75rem) {
      width: 100%;
    }
  }
  a {
    @media (max-width: 74.999rem) {
      --link-underline-color: var(--purple-primary);
      display: inline-flex;
      align-items: baseline;
      font-weight: 500;
      font-size: 1rem;
      gap: var(--space-2);
      color: var(--purple-primary);
      text-decoration: none;
      padding-block: 0.5rem;
      background: none;
      background-image: linear-gradient(
        var(--link-underline-color, currentColor),
        var(--link-underline-color, currentColor)
      );
      background-position: 100% 100%;
      background-size: 100% 0px;
      background-repeat: no-repeat;
      border: none;
      transition: var(--transition-base);
      &:after {
        display: none;
      }
    }
    @media (min-width: 75rem) {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      font-weight: 500;
      font-size: 1rem;
      color: var(--white);
      text-decoration: none;
      padding: 0.75rem 0 calc(0.75rem - 1px) 0;
      background: transparent;
      border-bottom: 1px solid #47348b;
      box-shadow: 0 1px 0 0 transparent;
      transition:
        color var(--transition-base),
        border-color var(--transition-base),
        box-shadow var(--transition-base),
        padding var(--transition-base);
      position: relative;
      width: 100%;
      box-sizing: border-box;
      &:after {
        content: "";
        display: block;
        width: 0.875rem;
        height: 0.875rem;
        background: var(--yellow-primary);
        mask: url(arrow_circle_right.svg) center / contain no-repeat;
        -webkit-mask: url(arrow_circle_right.svg) center / contain no-repeat;
        opacity: 0;
        transition: opacity var(--transition-base);
        flex-shrink: 0;
        margin-left: auto;
      }
    }
    &:hover {
      @media (min-width: 75rem) {
        color: var(--yellow-primary);
        border-bottom-color: var(--yellow-primary);
        box-shadow: 0 1px 0 0 var(--yellow-primary);
        padding-left: 0.5rem;
        &:after {
          opacity: 1;
        }
      }
    }
  }
}
.Button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.625rem 1.25rem;
  border: 2px solid transparent;
  border-radius: var(--border-radius-pill);
  font-size: 0.8125rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all var(--transition-fast);
  white-space: nowrap;
}
.Button--yellow {
  background: var(--yellow-primary);
  color: var(--purple-dark);
  border-color: var(--yellow-primary);
}
.Button--yellow:hover {
  background: var(--yellow-primary);
  border-color: var(--yellow-primary);
  color: var(--white);
}
.Button--arrow:after {
  content: "→";
  font-size: 1.125rem;
  transition: transform var(--transition-fast);
}
.Button--arrow:hover:after {
  transform: translate(0.25rem);
}
.link-dropdown-wrapper {
  position: relative;
}
.link-dropdown {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0;
  border: 0;
  background: none;
  font-size: 1rem;
  font-weight: 700;
  color: var(--white);
  cursor: pointer;
  transition:
    color var(--transition-base),
    background var(--transition-base);
  &:after {
    content: "";
    width: 0.875rem;
    height: 0.5rem;
    background: var(--yellow-primary);
    mask: url(arrow-down.svg) center / contain no-repeat;
    -webkit-mask: url(arrow-down.svg) center / contain no-repeat;
    transition:
      transform var(--transition-base),
      background var(--transition-base);
    flex-shrink: 0;
  }
  &[aria-expanded="true"]:after {
    transform: rotate(180deg);
  }
  @media (min-width: 75rem) {
    padding: 0 var(--gutter);
    height: 100%;
    margin-right: calc(-1 * var(--gutter));
    &[aria-expanded="true"] {
      background: var(--purple-dark);
      color: var(--yellow-primary);
    }
    &[aria-expanded="true"]:after {
      background: var(--yellow-primary);
    }
  }
}
.link-dropdown-menu-wrapper {
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 200px;
  background: var(--white);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow);
  margin-top: 0.5rem;
  opacity: 0;
  visibility: hidden;
  transition:
    opacity var(--transition-base),
    visibility var(--transition-base);
  z-index: 20;
  @media (min-width: 75rem) {
    top: 1.7rem;
    right: calc(-1 * var(--gutter));
    left: auto;
    min-width: 250px;
    background: var(--purple-dark);
    border-radius: 0;
    margin-top: 0;
    padding: 1.5rem;
  }
}
.link-dropdown[aria-expanded="true"] + .link-dropdown-menu-wrapper {
  opacity: 1;
  visibility: visible;
}
.link-dropdown-menu {
  list-style-type: none;
  padding: 0.5rem;
  margin: 0;
  @media (min-width: 75rem) {
    background-color: transparent;
    padding: 0;
  }
  li a {
    display: block;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    color: var(--purple-primary);
    text-decoration: none !important;
    border-radius: var(--border-radius-sm);
    transition: background var(--transition-fast);
    @media (min-width: 75rem) {
      color: var(--white);
      padding: 0.25rem 0;
      margin: 0.25rem 0;
      border-radius: 0;
      border-bottom: 2px solid transparent;
      transition: border-color var(--transition-base);
    }
    &:hover {
      background: var(--purple-tint);
      color: var(--purple-dark);
      text-decoration: none !important;
      @media (min-width: 75rem) {
        background: transparent;
        color: var(--white);
        border-bottom-color: var(--yellow-primary);
        text-decoration: none !important;
      }
    }
  }
}
.link-dropdown-wrapper--mobile {
  margin-top: 0;
  padding-top: 0;
  width: calc(100% + 3rem);
  margin-inline: -1.5rem;
  padding-inline: 1.5rem;
  @media (min-width: 75rem) {
    display: none;
  }
  .link-dropdown {
    color: var(--white);
    font-size: 1.25rem;
    padding: 1.5rem;
    margin-inline: -1.5rem;
    width: calc(100% + 3rem);
    justify-content: space-between;
    transition: background-color var(--transition-base);
    &:after {
      background: var(--white);
      width: 1rem;
      height: 0.625rem;
      mask: url(arrow-down.svg) center / contain no-repeat;
      -webkit-mask: url(arrow-down.svg) center / contain no-repeat;
      transition: transform var(--transition-base);
      margin-right: 0.25rem;
    }
    &:hover:after {
      transform: scale(1.1);
    }
    &[aria-expanded="true"]:after {
      transform: rotate(180deg);
    }
    &[aria-expanded="true"]:hover:after {
      transform: rotate(180deg) scale(1.1);
    }
    &:hover {
      background-color: #ffffff1a;
    }
  }
  .link-dropdown-menu-wrapper {
    position: static;
    background: transparent;
    box-shadow: none;
    margin-top: 0;
    width: calc(100% + 3rem);
    border-radius: 0;
    margin-inline: -1.5rem;
    padding-inline: 0;
    display: grid;
    grid-template: minmax(0, 0fr) / 100%;
    overflow: hidden;
    visibility: hidden;
    transition:
      grid-template-rows var(--transition-base),
      visibility var(--transition-base);
  }
  .link-dropdown[aria-expanded="true"] + .link-dropdown-menu-wrapper {
    grid-template-rows: minmax(0, 1fr);
    visibility: visible;
  }
  .link-dropdown-menu {
    padding-left: 1.5rem;
    min-height: 0;
    li a {
      display: inline-flex;
      align-items: baseline;
      font-weight: 500;
      font-size: 1rem;
      color: var(--white);
      text-decoration: none;
      padding-block: 0.5rem;
      background: none;
      border: none;
      transition: var(--transition-base);
      &:after {
        display: none;
      }
      &:hover {
        background: none;
        text-decoration: underline;
      }
    }
  }
}
.cluster {
  display: flex;
  flex-wrap: wrap;
  gap: var(--cluster-gap, 1rem);
  align-items: center;
}
.flow > * + * {
  margin-top: var(--flow-space, 1rem);
}
.flow-space-s {
  --flow-space: 0.5rem;
}
footer {
  width: 100%;
}
.footer-main {
  background-color: var(--purple-dark);
  color: #fff;
  padding: 4rem 0 3rem;
  border-bottom: 0.0625rem solid var(--purple-light);
}
.footer-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem 2rem;
}
.footer-content {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 4rem;
}
.footer-brand {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  align-items: center;
  text-align: center;
}
@media (min-width: 1024px) {
  .footer-brand {
    align-items: flex-start;
    text-align: left;
  }
}
.footer-logo {
  align-self: center;
  margin: 0;
}
.footer-logo a {
  display: block;
  line-height: 0;
  margin-top: 0;
  margin-bottom: -20px;
}
@media (min-width: 1024px) {
  .footer-logo a {
    align-self: flex-start;
    margin-bottom: 0;
  }
}
@media (max-width: 769px) {
  .footer-logo a img {
    height: 130px;
  }
}
.footer-logo img {
  max-width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}
@media (min-width: 769px) {
  .footer-logo img {
    max-width: 350px;
  }
}
.footer-address {
  font-style: normal;
  font-family:
    Hanken Grotesk,
    sans-serif;
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: 500;
  color: #fff;
}
.footer-address a {
  color: #fff;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.footer-address a:hover {
  opacity: 0.8;
}
.footer-social {
  margin-top: 0;
  width: 100%;
}
.social-icons {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0.75rem;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 1024px) {
  .social-icons {
    justify-content: flex-start;
  }
}
.social-icons li {
  margin: 0;
}
.social-icons a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #fdbb30 !important;
  background-color: #fdbb30;
  border-radius: 50%;
  transition:
    transform 0.3s ease,
    background-color 0.3s ease;
  color: #46378b;
}
.social-icons a:hover {
  transform: scale(1.15);
  background-color: #ffc849;
}
.social-icons i {
  font-size: 24px;
}
.footer-nav-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
.footer-nav-toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: #fdbb30;
  text-align: left;
}
@media (max-width: 768px) {
  .footer-nav-toggle {
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .footer-nav-toggle:after {
    content: "";
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    transition: transform 0.3s ease;
    background: #fdbb30;
    mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="6 9 12 15 18 9"></polyline></svg>')
      center / contain no-repeat;
    -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="6 9 12 15 18 9"></polyline></svg>')
      center / contain no-repeat;
  }
  .footer-nav-toggle[aria-expanded="true"]:after {
    transform: rotate(180deg);
  }
}
@media (min-width: 769px) {
  .footer-nav-toggle {
    pointer-events: none;
    cursor: default;
    outline: none;
  }
  .footer-nav-toggle:focus {
    outline: none;
  }
}
.footer-nav-column h2 {
  font-family:
    Hanken Grotesk,
    sans-serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 180%;
  margin: 0;
  color: #fdbb30;
}
.footer-nav-column h2 .footer-nav-toggle {
  font: inherit;
  color: inherit;
}
@media (max-width: 768px) {
  .footer-nav-column h2 {
    font-size: 1.25rem;
  }
}
@media (min-width: 769px) {
  .footer-nav-column h2 {
    margin-bottom: 1.5rem;
  }
}
.footer-nav-content {
  overflow: visible;
}
@media (max-width: 768px) {
  .footer-nav-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s ease;
    overflow: hidden;
  }
  h2:has(.footer-nav-toggle[aria-expanded="true"]) + .footer-nav-content {
    grid-template-rows: 1fr;
  }
  .footer-nav-content > ul {
    min-height: 0;
    overflow: hidden;
  }
}
.footer-nav-column ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 768px) {
  .footer-nav-column ul {
    padding-top: 0.25rem;
    padding-bottom: 0;
  }
}
.footer-nav-column li {
  margin-bottom: 0.5rem;
}
@media (max-width: 768px) {
  .footer-nav-column li {
    margin-bottom: 0.35rem;
  }
  .footer-nav-column li:last-child {
    margin-bottom: 0;
  }
}
.footer-nav-column a {
  color: #fff;
  text-decoration: none;
  transition: opacity 0.3s ease;
  line-height: 1.5;
  display: block;
  outline-offset: 2px;
}
.footer-nav-column a:hover {
  opacity: 0.8;
  text-decoration: underline;
}
.footer-nav-column a:focus-visible {
  outline: 2px solid #fdbb30;
  outline-offset: 2px;
  opacity: 1;
}
.footer-bottom {
  background-color: var(--purple-dark, #2d1f5c);
  color: #fff;
  padding: 1rem 0;
  text-align: center;
}
@media (max-width: 74.999rem) {
  .footer-bottom {
    padding-bottom: 6.5rem;
  }
}
.footer-disclaimer {
  margin: 0 0 0.5rem;
  line-height: 1.6;
  color: #fff;
}
.footer-disclaimer a {
  color: #fff;
  text-decoration: underline;
  transition: opacity 0.3s ease;
}
.footer-disclaimer a:hover {
  opacity: 0.8;
}
.footer-copyright {
  margin: 0;
  font-size: 0.9rem;
  color: #fff;
}
@media (max-width: 1024px) {
  .footer-content {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .footer-nav-container {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-main {
    padding: 0rem 0 2rem;
  }
}
@media (max-width: 768px) {
  .footer-main {
    padding: 3rem 0 2rem;
  }
  .footer-nav-container {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .footer-container {
    padding: 0 1.5rem;
  }
}
@media (max-width: 480px) {
  .social-icons {
    gap: 0.75rem;
  }
  .social-icons a {
    width: 40px;
    height: 40px;
  }
  .social-icons i {
    font-size: 20px;
  }
}
.help-block {
  background-color: #fff;
  padding: 0;
}
.help-block a.button {
  width: 100%;
}
.finder {
  width: 100%;
  font-family: Arial, sans-serif;
}
.finder-search-section {
  background: #cbcffb50;
  padding: 2rem;
  border-radius: 8px;
  margin-bottom: 1rem;
}
.search-row {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 1.5rem;
  align-items: end;
}
@media (max-width: 768px) {
  .search-row {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.search-input-wrapper {
  position: relative;
}
.search-label,
.filter-label {
  display: block;
  font-weight: 600;
  color: var(--gray-text);
  margin-bottom: 0.5rem;
  font-size: 0.9rem;
}
.search-input {
  width: 100%;
  padding: 0.5rem 2.5rem 0.5rem 1rem;
  border: 2px solid #ced4da;
  border-radius: 6px;
  font-size: 1rem;
  background: #fff;
  transition: border-color 0.2s;
  height: 2.4375rem;
}
.search-input:focus {
  outline: none;
  border-color: #6c757d;
}
.search-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: #6c757d;
  pointer-events: none;
  margin-top: 0.65rem;
}
.filter-dropdown-wrapper {
  position: relative;
}
.filter-select {
  width: 100%;
  padding: 0.5rem 2.5rem 0.5rem 1rem;
  border: 2px solid #ced4da;
  border-radius: 6px;
  font-size: 1rem;
  background: #fff;
  appearance: none;
  cursor: pointer;
  transition: border-color 0.2s;
  height: 2.4375rem;
}
.filter-select:focus {
  outline: none;
  border-color: #6c757d;
}
.dropdown-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: #6c757d;
  pointer-events: none;
  margin-top: 0.65rem;
}
.active-filters {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  margin-bottom: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  min-height: 2rem;
}
.current-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.Finder__remove {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: #6c757d;
  color: #fff;
  border-radius: 20px;
  font-size: 0.875rem;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s;
}
.Finder__remove:hover {
  background: #5a6268;
}
.Finder__remove i {
  font-size: 0.75rem;
  opacity: 0.8;
}
.reset-filters {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
  margin-bottom: 0;
}
.reset-filters i {
  font-size: 0.9em;
}
.current-filters:empty + .reset-filters {
  display: none;
}
.results-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
  flex-wrap: wrap;
  gap: 1rem;
}
.results-count {
  color: var(--gray-text);
  font-size: 0.9rem;
  font-weight: 500;
  margin: 0;
}
.button-group {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}
.button-group .button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}
.button-group .button i {
  font-size: 0.9em;
}
.button-group .button.is-checked {
  opacity: 0.8;
}
.results-section .button--purple {
  background-color: var(--purple-dark);
  color: var(--white);
  border: 1px solid transparent;
}
.results-section .button--purple:hover,
.results-section .button--purple:focus {
  background-color: var(--purple-primary);
  color: var(--white);
  box-shadow: 0 0 0 1.5px var(--purple-dark);
  border-color: transparent;
}
.results-section .button--purple.is-checked {
  background-color: var(--yellow-primary);
  color: var(--purple-dark);
  border-color: transparent;
}
.results-section .button--purple.is-checked:hover,
.results-section .button--purple.is-checked:focus,
.results-section .button--purple.is-checked:active {
  background-color: var(--yellow-primary);
  color: var(--purple-dark);
  box-shadow: 0 0 0 1.5px var(--purple-dark);
  border-color: transparent;
}
.button--red {
  background-color: #dc3545;
  color: var(--white);
  border: 1px solid transparent;
}
.button--red:hover,
.button--red:focus {
  background-color: #c82333;
  color: var(--white);
  box-shadow: 0 0 0 1.5px #dc3545;
}
.category-cards {
  display: none !important;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-bottom: 2rem;
}
.category-card {
  background: #fff;
  border: 2px solid #dee2e6;
  border-radius: 8px;
  padding: 1.5rem;
  cursor: pointer;
  text-align: left;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}
.category-card:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: #6c757d;
  transform: scaleY(0);
  transition: transform 0.3s ease;
}
.category-card:hover {
  border-color: #6c757d;
  box-shadow: 0 4px 12px #0000001a;
  transform: translateY(-2px);
}
.category-card:hover:before {
  transform: scaleY(1);
}
.category-card.active {
  border-color: #6c757d;
  background: #f8f9fa;
}
.category-card.active:before {
  transform: scaleY(1);
}
.category-card h3 {
  margin: 0 0 0.5rem;
  font-size: 1.1rem;
  font-weight: 600;
  color: #212529;
  line-height: 1.3;
}
.category-count {
  display: block;
  font-size: 0.875rem;
  color: var(--gray-text);
  font-weight: 500;
}
@media (max-width: 768px) {
  .category-cards {
    grid-template-columns: 1fr;
  }
}
.view-toggle {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.view-btn {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  color: var(--purple-dark);
  font-size: 1rem;
  transition:
    color 0.2s,
    transform 0.2s;
}
.view-btn.active {
  color: var(--purple-dark);
}
.view-btn:hover {
  color: var(--purple-dark);
  transform: scale(1.1);
}
.view-separator {
  color: var(--purple-dark);
  font-size: 1rem;
}
.program-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}
.program-list.grid-view {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  align-items: start;
}
@media (max-width: 1024px) {
  .program-list.grid-view {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 640px) {
  .program-list.grid-view {
    grid-template-columns: 1fr;
  }
}
.Program__card {
  position: relative;
  z-index: 0;
  background-color: #fff;
  color: #000;
  padding: 2rem;
  box-shadow: 0 2px 4px #0000001a;
  border-radius: 8px;
  border: 1px solid #dee2e6;
  display: flex;
  flex-direction: column;
}
.Program__card[data-finder-item="hide"] {
  display: none;
}
[data-finder-limit] ~ .Program__card {
  display: none;
}
.Program__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-bottom: 0.5rem;
}
.Program__title-wrapper {
  flex: 1;
  order: 2;
}
.Program__favorite.like-button {
  appearance: none;
  border: none;
  background: transparent;
  width: 40px;
  height: 40px;
  padding: 8px;
  margin: 0;
  outline: none;
  z-index: 2;
  transition: transform 0.5s cubic-bezier(0.7, 0, 0.3, 1);
  cursor: pointer;
  flex-shrink: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  order: 1;
}
.like-button:focus-visible {
  outline: 2px solid var(--purple-dark);
  outline-offset: 2px;
  border-radius: 50%;
}
.like-button:active {
  animation: depress 0.5s cubic-bezier(0.7, 0, 0.3, 1) both;
}
@keyframes depress {
  0%,
  to {
    transform: none;
  }
  50% {
    transform: translateY(5%) scale(0.9);
  }
}
.like-wrapper {
  display: grid;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  position: relative;
}
.like-wrapper > * {
  grid-area: 1 / 1;
  place-self: center;
}
.heart {
  width: 24px;
  height: 24px;
  display: block;
  transform-origin: center center;
  position: relative;
  z-index: 2;
}
.heart > path {
  stroke: #4b3190;
  stroke-width: 2;
  fill: transparent;
  transition: fill 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}
.like-button.is-favorite .heart > path {
  fill: #4b3190;
}
.like-button.is-favorite .heart {
  animation: heart-bounce 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}
@keyframes heart-bounce {
  40% {
    transform: scale(0.7);
  }
  0%,
  80%,
  to {
    transform: scale(1);
  }
}
.particles {
  width: 24px;
  height: 24px;
  position: relative;
}
.particle {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  width: 2px;
  border-radius: 1px;
  background-color: var(--color);
  --percentage: calc(var(--i) / var(--total-particles));
  --Θ: calc(var(--percentage) * 1turn);
  transform: translate(-50%, -50%) rotate(var(--Θ)) translateY(0) scaleY(0);
  transition: all 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}
.like-button.is-favorite .particle {
  animation: particles-out 0.6s cubic-bezier(0.7, 0, 0.3, 1) forwards;
}
@keyframes particles-out {
  50% {
    height: 8px;
  }
  50%,
  60% {
    height: 8px;
    transform: translate(-50%, -50%) rotate(var(--Θ)) translateY(20px) scale(1);
  }
  60% {
    height: 5px;
  }
  to {
    transform: translate(-50%, -50%) rotate(var(--Θ)) translateY(24px) scale(0);
  }
}
.ripple {
  height: 24px;
  width: 24px;
  border-radius: 50%;
  position: relative;
  overflow: visible;
  z-index: 1;
}
.ripple:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
  border: 2px solid #4b3190;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(0);
  transform-origin: center center;
}
.like-button.is-favorite .ripple:before {
  animation: ripple-out 0.5s cubic-bezier(0.7, 0, 0.3, 1);
}
@keyframes ripple-out {
  0% {
    transform: translate(-50%, -50%) scale(0);
    opacity: 1;
  }
  to {
    transform: translate(-50%, -50%) scale(2.5);
    opacity: 0;
  }
}
.Program__title {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 700;
  font-family: var(--font-family-headings, inherit);
}
.Program__title a {
  color: var(--purple-dark);
  text-decoration: none !important;
  background-image: linear-gradient(to right, currentColor, currentColor) !important;
  background-size: 0% 1px !important;
  background-position: left 100% !important;
  background-repeat: no-repeat !important;
  text-shadow: none !important;
  transition:
    background-size 0.2s ease,
    color 0.2s ease !important;
}
.Program__title a:hover {
  color: var(--purple-dark);
  text-decoration: none !important;
  background-size: 100% 1px !important;
  text-shadow: none !important;
}
.Program__level {
  color: var(--gray-text);
  font-size: 1rem;
  margin: 0.25rem 0 0;
  display: block;
}
.Program__offered {
  color: var(--gray-text);
  font-size: 1rem;
  font-style: italic;
  margin: 0.5rem 0;
}
.Program__toggle {
  background: none;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
  color: #6c757d;
  font-size: 1.2rem;
  transition: transform 0.2s;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  order: 3;
}
.Program__toggle[aria-expanded="true"] {
  transform: rotate(180deg);
}
.Program__toggle:hover {
  color: #495057;
}
.Program__content {
  overflow: hidden;
  transition: max-height 0.3s ease-out;
  max-height: 0px;
  flex: 1;
  display: block;
}
.Program__content:after {
  content: "";
  display: table;
  clear: both;
}
.Program__content p {
  margin-top: 0;
  padding: 1rem 0 0;
  color: var(--gray-text);
  line-height: 1.6;
  font-family: var(--font-family-body, inherit);
  font-size: 1rem;
}
.Program__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
}
.program-cta-button {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  overflow: visible !important;
  position: relative;
  margin: 0 0.5rem 0 0;
}
.program-cta-button i {
  transition: transform 0.2s ease;
  font-size: 0.9em;
}
.program-cta-button:hover i {
  transform: translate(4px);
}
.Program__keys {
  display: none;
}
.program-list.grid-view .Program__card {
  padding: 1.5rem 1.5rem 0;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.program-list.grid-view .Program__header {
  display: block;
  position: relative;
  margin-bottom: 0.5rem;
}
.program-list.grid-view .Program__title-wrapper {
  order: unset;
}
.program-list.grid-view .Program__favorite.like-button {
  position: absolute;
  top: 0;
  right: 0;
  order: unset;
}
.grid-view .Program__level {
  margin: 0.25rem 0 0.5rem;
}
.program-list.grid-view .Program__title {
  width: 100%;
  margin-bottom: 0.5rem;
  padding-right: 3rem;
  flex: unset;
  order: unset;
}
.program-list.grid-view .Program__toggle {
  display: none;
}
.program-list.grid-view .Program__content {
  max-height: none !important;
  overflow: visible;
  display: flex !important;
  flex-direction: column;
  flex: 1;
}
.program-list.grid-view .Program__card img,
.catalyst-card img {
  display: block;
  width: calc(100% + 3rem);
  height: auto;
  margin: -1.5rem -1.5rem 1rem;
  border-radius: 8px 8px 0 0;
  object-fit: cover;
  max-width: unset;
}
.program-list.grid-view .Program__content p {
  padding: 0;
  margin-top: 1rem;
  font-size: 0.9rem;
}
.program-list.grid-view .button {
  display: none;
}
.program-list.grid-view .Program__offered {
  margin: 0.5rem 0 1rem;
}
.program-list.grid-view .Program__card[data-finder-item="hide"] {
  display: none;
}
.program-list.grid-view [data-finder-limit] ~ .Program__card {
  display: none;
}
.load-more-section {
  display: flex;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 2rem;
}
.finder[data-finder-done] .load-more-section {
  display: none;
}
.tab-navigation {
  display: flex;
  border-bottom: none;
  margin-bottom: 2rem;
  position: relative;
}
.tab-navigation:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background-color: #dee2e6;
  z-index: 0;
}
.tab-button {
  background: var(--white);
  border-radius: 0;
  color: var(--purple-dark);
  border: none;
  padding: 1rem 2rem;
  font-size: 1.1rem;
  font-weight: 500;
  cursor: pointer;
  border-bottom: 2px solid #dee2e6;
  transition: all 0.2s ease;
  position: relative;
  z-index: 1;
}
.tab-button:hover {
  background-color: #cbcffb80;
}
.tab-button.active {
  border-bottom: 2px solid var(--purple-dark);
  border-radius: 0;
  background-color: #cbcffb50;
}
.tab-content {
  display: none;
}
.tab-content.active {
  display: block;
}
.catalyst-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 2rem;
  margin-top: 1rem;
}
.catalyst-card {
  background: #fff;
  border: 1px solid #dee2e6;
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 2px 4px #0000001a;
  transition: box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
}
.catalyst-header {
  margin-bottom: 1rem;
}
.catalyst-header .catalyst__title {
  margin: 0;
}
.catalyst-header .catalyst__title a {
  color: var(--purple-dark);
  text-decoration: underline;
  font-weight: 600;
}
.catalyst-header .catalyst__title a:hover {
  color: var(--purple-dark);
  text-decoration: underline;
  text-shadow: none !important;
}
.catalyst-content {
  flex: 0;
  display: flex;
  flex-direction: column;
  margin-top: 0;
  font-size: 16px;
}
.catalyst-content p {
  color: var(--gray-text);
  margin-bottom: 1rem;
  line-height: 1.5;
  flex: 1;
}
.catalyst-links {
  padding: 0;
  margin: 0 0 0 1rem;
}
.catalyst-links li {
  margin-bottom: 0.5rem;
}
.catalyst-links ul {
  margin: 0 0 0 0rem;
  padding-left: 1rem;
  padding-top: 1rem;
}
.catalyst-links a {
  color: #4b3190;
  text-decoration: none;
  font-weight: 500;
}
.catalyst-links a:hover {
  text-decoration: underline;
}
.Program__card img {
  display: none;
}
.Program__metrics {
  display: inline-flex;
  flex-direction: row;
  gap: 2rem;
  align-items: center;
  background: #cbcffb50;
  border-radius: 8px;
  padding: 0.75rem 1.5rem;
  margin: 1rem 0 0;
}
.Metric {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
}
.Metric__value {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: var(--purple-dark);
  font-family: var(--font-family-headings, inherit);
}
.Metric__label {
  font-size: 0.85rem;
  color: var(--gray-text);
  font-family: var(--font-family-body, inherit);
}
.program-list.grid-view .Program__metrics {
  float: none;
  display: flex;
  flex-direction: row;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  background: #cbcffb50;
  padding: 0.75rem 2rem;
  margin: auto -1.5rem 0;
  width: calc(100% + 3rem);
  margin-top: auto;
  border-radius: 0;
}
.program-list.grid-view .Metric {
  text-align: center;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}
.program-list.grid-view .Metric__value {
  font-size: 1.5rem;
}
.Program__metrics--grid,
.program-list.grid-view .Program__footer {
  display: none;
}
.program-list.grid-view .Program__metrics--grid {
  float: none;
  display: none;
  flex-direction: row;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  background: #cbcffb50;
  padding: 0.75rem 2rem;
  margin: auto -1.5rem 0;
  width: calc(100% + 3rem);
  margin-top: auto !important;
  border-radius: 0 0 8px 8px;
}
.program-list.grid-view .Program__metrics--grid .Metric {
  text-align: center;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
}
.program-list.grid-view .Program__metrics--grid .Metric__value {
  font-size: 1.5rem;
}
iframe {
  border: none !important;
  padding: unset !important;
  width: 100%;
  /* height: 100%; */
}
.joinbx {
  background-color: #fff;
}
p.center {
  text-align: center;
}
.callout.full {
  min-height: 575px;
}
.full p {
  margin-right: 10px;
  margin-left: 15px;
}
.full h3 {
  font-size: 1.5rem;
  margin-left: 15px;
}
.whyfc {
  width: 100%;
  height: 400px;
  background-color: #efefef;
}
.full p span {
  font-size: 1.8rem;
  color: #4b3190;
}
.main-slider .splide__slide video,
.main-slider .splide__slide iframe {
  max-width: 100vw;
  margin: 0 auto;
  display: block;
  border: none;
}
.medium-12 ul li a {
  font-size: 16px;
  font-weight: 700;
}
.medium-12 ul li a:hover {
  text-decoration: underline;
}

/*reskin fixes - FB HH*/

.info-block-main div a {
  height: 70px;
  text-transform: uppercase;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: absolute;
  background: rgba(0, 0, 0, 0.6);
  bottom: 0;
  left: 0;
}

.page-footer__social-link:is(:hover, :focus) svg {
  transform: scale(1.1);
}

/* ===================================== */
/* Sponsor Logos Component */
/* ===================================== */

.sponsor-component-wrapper {
  margin-bottom: 2rem;
}

.sponsor-tier {
  margin-bottom: 2rem;
}

.sponsor-tier:last-child {
  margin-bottom: 0;
}

.tier-heading {
  font-size: 1.25rem;
  font-weight: 600;
  color: #444;
  margin-bottom: 1rem;
  border-bottom: 2px solid #e6e6e6;
  padding-bottom: 0.5rem;
}

.logo-grid {
  display: grid;
  gap: 1rem;
}

.logo-grid.single-logo {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

/* Default to 4 columns for larger screens */
.logo-grid {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.sponsor-tier.tier-large .logo-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.sponsor-tier.tier-medium .logo-grid {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.sponsor-tier.tier-small .logo-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  padding: 1rem;
  min-height: 120px;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.logo-item:hover,
.logo-item:focus-within {
  border-color: var(--purple-primary);
  box-shadow: 0 0 0 3px rgba(76, 44, 146, 0.2);
}

.logo-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}

.logo-item a:hover,
.logo-item a:focus {
  outline: none;
}

.logo-item img {
  max-width: 100%;
  max-height: 100px;
  width: auto;
  height: auto;
  object-fit: contain;
}

@media screen and (max-width: 40em) {
  .logo-grid {
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  }
}

/* ===================================== */
/* Golf Invitational Sponsor Logos Component */
/* ===================================== */

.golf-sponsor-tiers {
  font-family: var(--font-primary);
  color: var(--gray-text);
  padding: 2rem 0;
}

.golf-sponsor-tiers__heading {
  font-family: var(--font-primary);
  font-size: 1.953rem;
  font-weight: 700;
  color: var(--heading);
  margin-top: 0;
  margin-bottom: 0.5rem;
}

.golf-sponsor-tier {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin-bottom: 2.5rem;
  padding-bottom: 2.5rem;
  border-bottom: 1px solid var(--gray-light);
}

.golf-sponsor-tier:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.golf-sponsor-tier__label {
  width: 100%;
  padding-left: 1rem;
  border-left: 4px solid var(--purple-primary);
  margin-bottom: 1.25rem;
}

.golf-sponsor-tier__name {
  font-size: 1.563rem;
  font-weight: 700;
  color: var(--heading);
  margin: 0 0 0.2rem 0;
  line-height: 1.2;
}

.golf-sponsor-tier__subtitle {
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--gray-dark);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin: 0;
  line-height: 1.4;
}

.golf-sponsor-tier__logos {
  width: 100%;
}

/* CSS Grid (not flex-basis %) to match the sibling .logo-grid sponsor component */
.golf-sponsor-logo-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.golf-sponsor-logo__card {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--white);
  border: 1px solid var(--gray-mid-light);
  height: 140px;
  padding: 1rem;
  box-sizing: border-box;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.golf-sponsor-logo__link {
  display: block;
  height: 100%;
  text-decoration: none;
}

.golf-sponsor-logo__link:hover .golf-sponsor-logo__card,
.golf-sponsor-logo__link:focus .golf-sponsor-logo__card {
  border-color: var(--purple-primary);
  box-shadow: 0 0 0 2px var(--purple-tint);
  outline: none;
}

.golf-sponsor-logo__link:hover,
.golf-sponsor-logo__link:focus {
  text-decoration: none;
}

.golf-sponsor-logo__img {
  max-width: 100%;
  max-height: 110px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

@media screen and (min-width: 40em) {
  .golf-sponsor-tier {
    flex-wrap: nowrap;
    gap: 2rem;
  }

  .golf-sponsor-tier__label {
    flex: 0 0 200px;
    max-width: 200px;
    margin-bottom: 0;
  }

  .golf-sponsor-tier__logos {
    flex: 1 1 0;
    min-width: 0;
  }

  .golf-sponsor-logo-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (min-width: 64em) {
  .golf-sponsor-tier__label {
    flex: 0 0 220px;
    max-width: 220px;
  }
}

/*reskin fixes - FB HH*/
.sidebar-events-section.hh-events-block h2 {
  margin-bottom: 0 !important;
}
.upcoming-events-full.hh-events-block .event-date {
  height: 100% !important;
}
.orbit-bullets button {
    width: 12px;
    height: 12px;
    padding: 8px;
    margin: 6px;
    background-color: #cacaca;
    border-radius: 50%;
}

/* Divider lines between sidebar-detail sections (Details/Contact/Share/Save) on the
   events page — refresh preview only. hh-events.css sets margin-bottom: 20px on these
   rows for production too, so this stays here rather than in hh-events.css. */
.hh-events .sidebar-detail .row {
  margin-bottom: 0;
  padding-bottom: 1.25rem;
  border-bottom: var(--border-width) solid var(--gray-light);
}
.hh-events .sidebar-detail .row + .row {
  margin-top: 1.25rem;
}
.hh-events .sidebar-detail .row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

/* =========================================================================
   COMPONENT: .cms-card
   Refresh-era general-purpose content card, three variants:
     .cms-card--clickable   Style 1: whole card is a "stretched link"
     .cms-card--accent      Style 2: top accent bar + split text/button actions
     .cms-card--horizontal  Style 3: image beside content at 40em+
   Pasted directly into a WYSIWYG region as plain XHTML (no <style>/#literal
   block belongs in page content — that's what this stylesheet is for).
   Wrap a `.row` of `.columns` cards in `.cms-card-row` to make cards in the
   same row equal height. Buttons reuse the existing global `.button
   .button--purple` variant rather than a one-off color override.
========================================================================= */
.cms-card-row {
  display: flex;
  flex-wrap: wrap;
}
.cms-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: calc(100% - var(--space-6));
  margin-bottom: var(--space-6);
  background-color: var(--white);
  border: var(--border-width) solid var(--black-10);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition:
    var(--transition-shadow),
    transform 0.25s ease,
    border-color 0.25s ease;
}
.cms-card:hover,
.cms-card:focus-within {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--purple-primary);
}
.cms-card-image {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background-color: var(--purple-bg);
}
.cms-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cms-card-content {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: var(--space-6);
}
.cms-card-title {
  font: var(--h3);
  color: var(--purple-primary);
  margin-top: 0;
  margin-bottom: var(--space-3);
}
.cms-card-title a {
  color: var(--purple-primary);
  text-decoration: none;
}
.cms-card-title a:hover,
.cms-card-title a:focus {
  text-decoration: underline;
}
.cms-card-text {
  color: var(--gray-text);
  margin-bottom: var(--space-5);
}
.cms-card-footer {
  margin-top: auto;
  padding-top: var(--space-2);
}

/* Style 1: whole-card "stretched link" */
.cms-card--clickable {
  position: relative;
}
.cms-card--clickable .cms-card-link::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
.cms-card--clickable:focus-within {
  outline: var(--border-width-thick) solid var(--purple-primary);
  outline-offset: 3px;
}
.cms-card--clickable .cms-card-link:focus {
  outline: none;
}
.cms-card-cta {
  display: inline-block;
  font: var(--h6);
  color: var(--purple-primary);
}

/* Style 2: top accent bar + split actions */
.cms-card--accent {
  border-top: var(--border-width-thicker) solid var(--purple-primary);
}
.cms-card-action-link {
  font: var(--h6);
  color: var(--purple-primary);
  text-decoration: underline;
  margin-right: var(--space-4);
}

/* Style 3: responsive horizontal row card */
.cms-card--horizontal {
  flex-direction: column;
}
.cms-card--horizontal .cms-card-image {
  width: 100%;
  aspect-ratio: 16 / 9;
}
@media screen and (min-width: 40em) {
  .cms-card--horizontal {
    flex-direction: row;
  }
  .cms-card--horizontal .cms-card-image {
    width: 35%;
    aspect-ratio: auto;
  }
  .cms-card--horizontal .cms-card-content {
    width: 65%;
    padding: var(--space-8);
  }
}

/* Tinted background section used to showcase a card (e.g. around Style 3) */
.cms-card-section--tint {
  background-color: var(--purple-bg);
  border-radius: var(--border-radius-lg);
  padding: var(--space-10) var(--space-4);
  margin-top: var(--space-8);
}
.cms-card-section--tint .cms-card {
  background-color: var(--purple-tint);
  border-color: rgba(71, 52, 139, 0.25);
}


/* =====================================================================
   Content Cards Component
   Row type: "cards" on the Two Column Data Definition
   Styles: .content-cards--stacked (A)  ·  .content-cards--compact (D)

   This exact block goes into BOTH stylesheets, unchanged:
     _cms/cascade-css-files/app.css              (legacy)
     _cms/cascade-css-files/_refresh/style.css   (refresh)

   Every site value is written as var(--token, hardcoded-fallback).
   Refresh defines the tokens and wins; legacy defines none, so the
   fallback applies. One block, two skins, nothing to keep in sync.

   The grid is <div>/<article>, deliberately not <ul>/<li> — both
   stylesheets set `.mid-main ul li { margin: 5px 0 0 20px }` at a
   specificity a single class selector cannot beat.
   ===================================================================== */

.content-cards-wrap {
  /* Cards size against the main column, not the viewport, so they behave
     the same whether the page shows a sidebar (large-8) or not (large-12). */
  container-type: inline-size;
  container-name: content-cards;
  margin: 0 0 2rem;
}

.content-cards__heading {
  margin: 0 0 1rem;
}

.content-cards {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin: 0;
}

/* A single card spans the column instead of sitting in a half-width track.
   Two classes so it outranks the grid-template rules in the @container
   blocks below regardless of source order. */
.content-cards.content-cards--single {
  grid-template-columns: 1fr;
}

.content-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--white, #ffffff);
  border: 1px solid var(--gray-light, #e6e6e6);
  border-radius: var(--border-radius, 6px);
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.content-card:hover,
.content-card:focus-within {
  transform: translateY(-2px);
  border-color: var(--purple-tint, #e4e0ef);
  box-shadow: 0 8px 18px rgba(71, 52, 139, 0.16);
}

.content-card__media {
  margin: 0;
  padding: 0;
  background: var(--gray-lighter, #ebebeb);
  overflow: hidden;
}

.content-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.content-card__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-2, 0.5rem);
  padding: 1.125rem 1.25rem 1.375rem;
}

.content-card__eyebrow {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--purple-primary, #47348b);
}

.content-card__title {
  margin: 0;
  font-size: 1.1875rem;
  font-weight: 700;
  line-height: 1.25;
  color: var(--purple-dark, #280759);
  text-wrap: balance;
}

.content-card__title a {
  color: inherit;
  text-decoration: none;
}

/* Stretched link — the title anchor covers the whole card, so the entire
   card is clickable while the accessibility tree still sees one link. */
.content-card__title a::after {
  content: "";
  position: absolute;
  inset: 0;
}

.content-card__title a:hover,
.content-card__title a:focus {
  text-decoration: underline;
}

.content-card__body {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--gray-text, #444);
}

/* Body is a WYSIWYG field — tame whatever the editor pastes in. */
.content-card__body > :first-child { margin-top: 0; }
.content-card__body > :last-child { margin-bottom: 0; }
.content-card__body p { margin: 0 0 0.5rem; }
.content-card__body h2,
.content-card__body h3,
.content-card__body h4,
.content-card__body h5 {
  font-size: 1rem;
  line-height: 1.3;
  margin: 0 0 0.25rem;
}
.content-card__body img { max-width: 100%; height: auto; }
.content-card__body ul,
.content-card__body ol { margin: 0 0 0.5rem 1.25rem; padding-left: 0; }

/* A link inside the body must sit above the stretched title link,
   or it becomes unclickable. */
.content-card__body a {
  position: relative;
  z-index: 1;
}

.content-card__cta {
  margin-top: auto;
  padding-top: var(--space-2, 0.5rem);
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--purple-medium, #5639a4);
  text-decoration: none;
}

.content-card__cta::after {
  content: " \203A";
  font-weight: 400;
}

.content-card:hover .content-card__cta {
  text-decoration: underline;
}

/* ---------------------------------------------------------------------
   Style A — Stacked grid. Image on top, 16:9.
   --------------------------------------------------------------------- */

.content-cards--stacked .content-card__media {
  aspect-ratio: 16 / 9;
}

/* Image is optional. With no image there is no media band at all, so the
   card gets a rule in its place — a mixed row then reads as a deliberate
   set rather than one card that failed to load. */
.content-cards--stacked .content-card--no-media .content-card__text {
  border-top: 4px solid var(--purple-primary, #47348b);
  padding-top: 1.25rem;
}

/* ---------------------------------------------------------------------
   Style D — Compact. Tinted panel, optional square thumbnail.
   --------------------------------------------------------------------- */

.content-cards--compact .content-card {
  flex-direction: row;
  background: var(--gray-lightest, #f3f3f3);
  border-color: transparent;
}

.content-cards--compact .content-card__media {
  flex: none;
  width: 76px;
  align-self: center;
  margin: 0 0 0 1.125rem;
  border-radius: var(--border-radius-sm, 3px);
  aspect-ratio: 1 / 1;
}

.content-cards--compact .content-card__text {
  padding: 1rem 1.125rem;
}

.content-cards--compact .content-card__title {
  font-size: 1.0625rem;
}

.content-cards--compact .content-card__body {
  font-size: 0.875rem;
}

/* No lift on compact cards — they are list rows, not objects. */
.content-cards--compact .content-card:hover,
.content-cards--compact .content-card:focus-within {
  transform: none;
  box-shadow: none;
  background: var(--purple-tint, #e4e0ef);
}

/* ---------------------------------------------------------------------
   Column-width breakpoints. These respond to the main column, so the
   same rules hold with or without a sidebar. Without @container support
   the grid stays single-column, which is a correct layout, just taller.
   --------------------------------------------------------------------- */

@container content-cards (min-width: 30rem) {
  .content-cards--stacked,
  .content-cards--compact {
    grid-template-columns: repeat(2, 1fr);
  }
}

@container content-cards (min-width: 52rem) {
  .content-cards--stacked {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .content-card {
    transition: none;
  }
  .content-card:hover,
  .content-card:focus-within {
    transform: none;
  }
}

/* =====================================================================
   End of Content Cards Component
   ===================================================================== */

/* =====================================================================
   Hall of Human Origins (origins)
   Page-scoped dark "exhibit hall" theme for /origins only, per the
   origins-exhibit-hall design spec's Color Direction. Tokens are scoped
   to .origins-page, NOT merged into :root — this palette is intentionally
   specific to this one page and should not be normalized to the site's
   light refresh theme. Accent colors reference the refresh system's
   existing warm tokens (--yellow-primary, --yellow-dark, --orange-primary)
   rather than hardcoding new hex values.
   Ported from the hand-verified, contrast-checked prototype at
   shared/cascade-cms/specs/origins-exhibit-hall/prototype.html — see that
   file if any value here ever needs to be re-derived.
   ===================================================================== */
.origins-page {
  --origins-bg: #322e2a;
  --origins-bg-deep: #221f1c;
  --origins-surface: #423b34;
  --origins-surface-border: rgba(255, 214, 158, 0.16);
  --origins-accent: var(--yellow-dark, #cc8b00);
  --origins-accent-bright: var(--yellow-primary, #f3bd50);
  --origins-accent-2: var(--orange-primary, #f37520);
  --origins-ink: #f4ead9;
  --origins-ink-muted: rgba(244, 234, 217, 0.74);
  background: var(--origins-bg);
  color: var(--origins-ink);
  font-family: var(--font-primary, sans-serif);
  padding-bottom: var(--space-16, 4rem);
  /* Full-bleed break-out: this page sits inside the site's standard
     .row.inner-mid-main (max-width: 1200px, centered) like every other
     One Column page, but the exhibit-hall look (and the legacy page it
     replaces) needs the dark background, hero, and sub-nav to run edge to
     edge. The classic centered-container break-out trick: 50% resolves
     against this element's own (centered, symmetric) parent chain, so it
     lands exactly at the viewport edge regardless of the 1200px cap above
     it. Nested .row elements (.origins-intro's two-column split) still
     re-cap themselves via the global .row { max-width } rule, so body copy
     stays readable width even though the page shell is full-bleed. */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* The INTRO region on this Template renders the site's standard visible
   h1#startcontent ahead of <article> — correct for ordinary One Column
   pages, but redundant here: the Format already ships its own (sr-only)
   h1 inside .origins-page for accessibility, and the "Hall of Human
   Origins" title is baked directly into the hero artwork. Scoped to pages
   that render .origins-page so no other One Column page loses its title. */
.onecol-content:has(.origins-page) > h1#startcontent {
  display: none;
}

/* The Template's .row.inner-mid-main wrapper gets a sitewide 2rem top margin
   (see the @media (min-width: 1023px) rule near .inner-mid-main above) to
   clear the standard .Header + .UtilityHeader stack. This page's Header is
   logo-only (no UtilityHeader), so that gap just shows as a band of the
   light site background above the full-bleed dark hero. Cancelled here,
   scoped the same way as the h1 rule above. */
@media (min-width: 1023px) {
  .inner-mid-main:has(.origins-page) {
    margin-top: 0 !important;
  }
}

/* This file has TWO separate rules that directly target <p> at equal
   (0,1,1) specificity to this one — the global `p { color: var(--gray-text) }`
   near the top of the file, AND `.onecol-content p { color: #000000e6; }`
   (the One Column Template's own main wrapper, which really does sit as an
   ancestor of this component in production). A rule that only sets color on
   an ancestor is inherited, and an inherited value always loses to any rule
   that matches the element itself, regardless of specificity — so without
   this, unclassed paragraphs (e.g. the intro body copy) would silently
   render in one of those light-theme colors against this page's dark
   ground. Because both of those rules have equal specificity to this one,
   source order decides the winner — keep this section at (or very near) the
   END of this file so it always wins the tie. Don't rely on setting `color`
   on wrapper elements and expecting it to reach nested <p>s. */
.origins-page p { color: inherit; }

/* Non-negotiable: nothing on this page renders upper-cased, no matter what
   a reused shared class (e.g. .content-card__eyebrow, elsewhere uppercase
   by design) would otherwise apply. This also drops the legacy
   `h2, .ge h2 { text-transform: uppercase; }` rule from the retired
   origins.css — sentence/title case as authored, everywhere on this page. */
.origins-page,
.origins-page * {
  text-transform: none;
}

.origins-page a { color: var(--origins-accent-bright); }
.origins-page a:hover,
.origins-page a:focus { color: var(--origins-ink); }

.origins-page h1, .origins-page h2, .origins-page h3 { font-family: var(--font-primary, sans-serif); }

/* Hero band */
.origins-hero {
  position: relative;
  min-height: 300px;
  display: flex;
  align-items: flex-end;
  background: var(--origins-bg-deep);
  overflow: hidden;
}
.origins-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.6;
}
.origins-hero__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(34,31,28,0.1) 0%, rgba(34,31,28,0.95) 100%);
}
.origins-hero__content {
  position: relative;
  z-index: 1;
  padding: var(--space-8, 2rem) var(--gutter, 1.5rem) var(--space-6, 1.5rem);
  width: 100%;
  box-sizing: border-box;
}
.origins-hero__eyebrow {
  margin: 0;
  font: var(--eyebrow, 400 0.875rem/1.5 sans-serif);
  letter-spacing: 0.02em;
  color: var(--origins-accent-bright);
}

/* Sub-nav pill bar -- container-scrolling, not a hidden/toggled menu. This is
   what structurally fixes the legacy #skulls widget's data-hide-for="small"
   bug (it hid the mobile hamburger exactly when needed) — there is no JS
   toggle here to get backwards in the first place. */
.origins-subnav {
  display: flex;
  gap: var(--space-3, 0.75rem);
  overflow-x: auto;
  padding: var(--space-4, 1rem) var(--gutter, 1.5rem);
  background: var(--origins-bg-deep);
  border-bottom: 1px solid var(--origins-surface-border);
  -webkit-overflow-scrolling: touch;
}
.origins-subnav::-webkit-scrollbar { height: 6px; }
.origins-subnav::-webkit-scrollbar-thumb { background: var(--origins-surface-border); border-radius: 4px; }
.origins-subnav__pill {
  flex: none;
  display: inline-block;
  padding: 0.5rem 1.1rem;
  border-radius: var(--border-radius-pill, 31.25rem);
  border: 1px solid var(--origins-surface-border);
  background: var(--origins-surface);
  color: var(--origins-ink);
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}
.origins-subnav__pill:hover,
.origins-subnav__pill:focus {
  background: var(--origins-accent);
  border-color: var(--origins-accent);
  color: var(--origins-bg-deep);
}
.origins-subnav__pill:focus-visible {
  outline: 2px solid var(--origins-accent-bright);
  outline-offset: 2px;
}

/* Intro band -- framing text card + contained carousel card */
.origins-intro { padding: var(--space-12, 3rem) var(--gutter, 1.5rem) var(--space-8, 2rem); }
.origins-panel {
  background: var(--origins-surface);
  border: 1px solid var(--origins-surface-border);
  border-radius: var(--border-radius, 6px);
  padding: var(--space-6, 1.5rem);
  height: 100%;
  box-sizing: border-box;
  margin-bottom: var(--space-6, 1.5rem);
}
.origins-carousel-panel { padding: var(--space-4, 1rem); }
.origins-intro__eyebrow {
  margin: 0 0 var(--space-2, 0.5rem);
  font: var(--eyebrow, 400 0.875rem/1.5 sans-serif);
  color: var(--origins-accent-bright);
}
.origins-intro__heading {
  margin: 0 0 var(--space-4, 1rem);
  font: var(--h2, 700 1.75rem/1.2 sans-serif);
  color: var(--origins-ink);
}
.origins-intro__body { color: var(--origins-ink-muted); }
.origins-intro__body p { margin: 0 0 1em; }
.origins-footnote-ref {
  color: var(--origins-accent-bright);
  text-decoration: none;
  font-weight: 700;
  padding: 0 0.15em;
}
.origins-footnote {
  margin-top: var(--space-4, 1rem);
  padding-top: var(--space-4, 1rem);
  border-top: 1px dashed var(--origins-surface-border);
  font-size: 0.85rem;
  color: var(--origins-ink-muted);
}
.origins-location { margin-top: var(--space-4, 1rem); color: var(--origins-ink-muted); }
.origins-location a { margin-left: 0.35em; font-weight: 600; }

/* Contained Splide carousel -- distinct from the full-bleed home hero
   treatment; markup pattern matches home-banner.vm exactly (.splide /
   .splide__track / .splide__list / .splide__slide / .splide__arrows /
   .splide__pagination). This carousel is manual-only (no autoplay) — see
   the JS init in origins-exhibit-hall.vm and its note about the site-wide
   _refresh/script.js auto-init needing a follow-up scoping fix. */
.origins-carousel { position: relative; }
.origins-carousel .splide {
  height: 420px;
  width: 100%;
  border-radius: var(--border-radius-sm, 3px);
  overflow: hidden;
  background: var(--origins-bg-deep);
}
.origins-carousel .splide__slide {
  background: var(--origins-bg-deep);
  flex-direction: column;
  gap: var(--space-2, 0.5rem);
}
.origins-carousel .splide__slide img {
  object-fit: contain;
  max-height: 78%;
  width: auto;
  background: transparent;
}
.origins-carousel__caption {
  margin: 0;
  color: var(--origins-ink);
  font-weight: 700;
  font-style: italic;
  text-align: center;
}
.origins-carousel .splide__arrows { position: absolute; inset: 0; display: flex; align-items: center; justify-content: space-between; pointer-events: none; padding: 0 0.5rem; }
.origins-carousel .splide__arrow { position: static; pointer-events: auto; background: rgba(34,31,28,0.75); }
.origins-carousel .splide__arrow:hover { background: var(--origins-accent); }
.origins-carousel .splide__arrow i,
.origins-carousel .splide__arrow svg { color: var(--origins-ink); fill: var(--origins-ink); }
.origins-carousel .splide__pagination { position: absolute; bottom: 10px; left: 0; right: 0; }
.origins-carousel .splide__pagination__page { background: var(--origins-surface-border); }
.origins-carousel .splide__pagination__page.is-active { background: var(--origins-accent-bright); }

/* Skull card grid -- reuses .content-card / .content-cards structure and
   no-media fallback pattern from _shared/content-cards.vm, re-skinned for
   the dark ground. Card surfaces sit on a slightly lighter charcoal than
   the page ground so the grid reads as part of the exhibit, not a
   light-theme component pasted onto a dark background. */
.origins-grid-section { padding: var(--space-8, 2rem) var(--gutter, 1.5rem) var(--space-12, 3rem); }
.origins-grid-heading {
  margin: 0 0 var(--space-6, 1.5rem);
  font: var(--h2, 700 1.75rem/1.2 sans-serif);
  color: var(--origins-ink);
}
.origins-page .content-cards-wrap { margin: 0; }
.origins-page .content-cards {
  grid-template-columns: repeat(2, 1fr); /* small-6 -- 2-up, the mobile floor; grid never drops to 1 column */
  gap: var(--space-5, 1.25rem);
}
.origins-page .content-card {
  background: var(--origins-surface);
  border-color: var(--origins-surface-border);
}
.origins-page .content-card:hover,
.origins-page .content-card:focus-within {
  border-color: var(--origins-accent);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.4);
}
.origins-page .content-card__media { background: var(--origins-bg-deep); }
.origins-page .content-card__title,
.origins-page .content-card__title a { color: var(--origins-ink); }
.origins-page .content-card--no-media .content-card__text {
  border-top-color: var(--origins-accent);
}
.species-card__era {
  margin: 0.25rem 0 0;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  /* --origins-accent-2 (orange) only clears ~3.9:1 against the card surface --
     short of the 4.5:1 AA floor for text this small. --origins-accent-bright
     (yellow) clears ~6.4:1 in the same spot — use it here, not accent-2. */
  color: var(--origins-accent-bright);
}
@media (min-width: 40rem) { /* medium-4 -- 3-up tablet */
  .origins-page .content-cards { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 64rem) { /* large-3 -- 4-up desktop */
  .origins-page .content-cards { grid-template-columns: repeat(4, 1fr); }
}

/* Video section */
.origins-video-section { padding: 0 var(--gutter, 1.5rem) var(--space-12, 3rem); }
.origins-video-heading {
  font: var(--h3, 700 1.25rem/1.2 sans-serif);
  color: var(--origins-ink);
  margin: 0 0 var(--space-4, 1rem);
}
.origins-video-panel { background: var(--origins-bg-deep); border-radius: var(--border-radius, 6px); padding: var(--space-4, 1rem); }

/* =====================================================================
   End of Hall of Human Origins (origins)
   ===================================================================== */

/* =====================================================================
   Hominin Skulls Carousel (hominin-species-dev / "Hall of Human Origins
   Two Column" pages)
   Fixes the same live bug the origins-exhibit-hall Format's header
   comment already documents for the /origins index page: the old
   carousel loaded accessible-slick's CSS from a CDN but never loaded
   slick.min.js or called .slick(), so every slide rendered as one long
   stacked column (div.slickcontainer). This page never got the Format
   rebuild that /origins got — it's still raw WYSIWYG page content on the
   "Hall of Human Origins Two Column" template — so the same CDN-CSS/no-JS
   mismatch reproduced here. Rebuilt on Splide (already loaded site-wide:
   splide.min.css/js ship in the standard HEAD FILES / BOTTOM SCRIPTS
   blocks), matching the fix already applied on /origins.
   Scoped locally rather than reusing `.origins-page`/`.origins-carousel`
   above — this page is a plain light-theme Two Column page, not the dark
   exhibit-hall shell, so it keeps its own token set instead of inheriting
   that page's dark palette.
   ===================================================================== */
.skulls-carousel {
  --skulls-bg: #363636;
  --skulls-accent: var(--yellow-primary, #f3bd50);
  background-color: var(--skulls-bg);
  border-radius: var(--border-radius, 6px);
  padding: var(--space-4, 1rem);
  margin-bottom: var(--space-6, 1.5rem);
}
.skulls-carousel .splide__slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.skulls-carousel .splide__slide img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 660px;
  max-height: 60vh;
  object-fit: contain;
  margin: 0 auto;
  border: 2px solid var(--black, #000);
  background-color: var(--skulls-bg);
}
.skulls-carousel__caption {
  margin: var(--space-2, 0.5rem) 0 0;
  color: var(--white, #fff);
  font-size: 1rem;
  font-weight: 600;
  font-style: italic;
}
.skulls-carousel .splide__arrow svg {
  fill: var(--gray-text-dark, #333);
}
.skulls-carousel .splide__pagination__page.is-active {
  background: var(--skulls-accent);
}
@media (max-width: 25em) {
  .skulls-carousel .splide__slide img {
    height: 400px;
  }
}

/* =====================================================================
   End of Hominin Skulls Carousel
   ===================================================================== */
