:root {
    --primary: #500778; /* Panther Purple */
    --secondary: #ffb500; /* Goldenrod */
    --dark: #2e1a47; /* Campaniling */
    --light: rgba(229, 225, 230, 0.3); /* Dome lightened */
    --accent1: #46a09a; /* Fountain darkened to pass contrast */
    --accent2: #ac4fc6; /* Spring Blossom */
    --accent3: rgba(198, 218, 231, 0.35); /* Prexy's Pond lightened with transparency */
    --accent3a: #c6dae7; /* Prexy's Pond */
    --accent3b: #ebf2f7; /* Prexy's Pond lightened without transparency */
    --accent4: #e56a54; /* Sunset */
    --accent5: #dbe442; /* Firefly */
    --gray1: #737373; /* Block subtitle */
    --gray2: #f7f6f7; /* Ckeditor accordion background */
    --gray3: #ccc; /* Borders */
}

*,
::after,
::before {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    font-size: 14px;
    overflow-x: hidden;
}

body {
    font-family: "proxima-nova";
    color: var(--dark);
    font-display: swap;
    margin-top: 0 !important;
    line-height: 1.755rem;
    font-size: 1.17rem;
    position: relative;
}

body.role-anonymous:not(.short-header) {
    margin-top: 85px !important;
}

body.not-front::before {
    background: rgba(229, 225, 230, 0.3);
    transform: skew(-22deg);
    position: absolute;
    content: "";
    display: block;
    inset: 0 65% 0 -100%;
    height: 100%;
}

body.cke_editable,
html.cke_panel_container body {
    margin-top: 0 !important;
}

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

img.align-right {
    padding-left: 1rem;
}

img.align-left {
    padding-right: 1rem;
}

img.align-center {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

figure:has(.align-left) {
    float: left;
    margin-right: 1rem;
    margin-bottom: 0;
}

figure:has(.align-left) img {
    padding: 0;
}

figure:has(.align-right) {
    float: right;
    margin-left: 1rem;
    margin-bottom: 0;
}

figure:has(.align-right) img {
    padding: 0;
}

figure:has(.align-center) {
    margin: 0 auto;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

figure:has(.align-center) img {
    padding: 0;
}

.caption-img figcaption {
    background: var(--gray2);
    text-align: center;
    padding: 0.5rem;
    font-size: 1rem;
}

iframe {
    max-width: 100%;
}

.text-formatted iframe {
    padding-bottom: 20px;
}

p {
    margin-bottom: 1.5rem;
}

p a {
    text-decoration: underline;
}

.page-content li a {
    text-decoration: underline;
}

.text-block a {
    text-decoration: underline;
}

.page-content .nav li a,
.page-content nav li a {
    text-decoration: none;
}

a {
    color: var(--primary);
    font-weight: bold;
}

hr,
.hr {
    border-top: 4px solid var(--secondary);
    margin-top: 2rem;
    margin-bottom: 2rem;
}

a.btn-primary {
    color: #ffffff !important;
    font-family: "proxima-nova";
    font-weight: 700;
    background: var(--accent1);
    padding: 0.8rem 2rem;
    margin: 0;
    text-transform: none;
    transition: all 300ms ease-in-out;
    margin-bottom: 1rem;
    display: inline-block;
    line-height: 1.6rem;
    font-size: 1.17rem;
    text-align: center;
    text-decoration: none;
}

.border-bottom,
.border-top {
    border-color: var(--secondary) !important;
    border-width: 4px !important;
}

a:hover {
    color: var(--accent4);
}

:target::before {
    content: "";
    display: block;
    height: 150px;
    margin: -150px 0 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-bottom: 1.5rem;
    line-height: 1;
}

.h4,
.h5,
.h6,
h4,
h5,
h6 {
    line-height: 1.2;
}

.h1,
h1 {
    font-family: "BlackerProDis-ExBd";
    font-weight: 400;
    font-size: 2.857rem;
    line-height: 1.1;
}

h2,
.h2 {
    font-size: 2.8rem;
    font-family: "BlackerProDis-ExBd";
    margin-bottom: 2rem;
    line-height: 1.1;
}

h2.proxima,
.h2.proxima {
    color: var(--dark);
    font-family: "proxima-nova";
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1;
}

h2.proxima.white {
    color: white;
}

.block-subtitle,
h2.caps {
    color: var(--gray1);
    font-family: "proxima-nova";
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
}

h2.h3 {
    font-size: 2.2rem;
    font-family: "proxima-nova";
    font-weight: bold;
}

h3,
.h3 {
    color: var(--dark);
    font-weight: 800;
    font-size: 1.8rem;
}

h2 em,
h3 em {
    color: var(--accent2);
    font-style: normal;
}

h3.proxima {
    font-family: "proxima-nova";
    font-size: 2rem;
    font-weight: 800;
}

.h4,
h4 {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 800;
    font-size: 1.4rem;
}

.h5,
h5 {
    font-size: 1.17rem;
    line-height: 1.5rem;
    font-weight: bold;
}

.h6,
h6 {
    font-family: "proxima-nova";
    font-size: 1rem;
    line-height: 1.15;
}

ul {
    list-style-image: url("../images/ul-list-item.png");
    position: relative;
    padding-left: 22px;
}

ol ol {
    list-style-type: lower-latin;
}

ol ol ol {
    list-style-type: lower-roman;
}

.fountain-btn a {
    color: #ffffff;
    font-family: "proxima-nova";
    font-weight: 700;
    background: var(--accent1);
    padding: 0.8rem 2rem;
    margin: 0;
    text-transform: none;
    transition: all 300ms ease-in-out;
    margin-bottom: 1rem;
    display: inline-block;
    line-height: 1.755rem;
    font-size: 1.17rem;
}

.fountain-btn a:hover {
    background: var(--dark);
    color: white;
    text-decoration: none;
}

.purple-gradient {
    background: linear-gradient(180deg, #2f044d, #46066b);
    background-blend-mode: multiply;
}

.dome {
    background: var(--light);
}

.prexys-pond {
    background: var(--accent3);
}

.panther-purple {
    background: var(--primary);
    color: white;
}

.dark-purple {
    background: var(--dark);
    color: white;
}

.panther-purple h3 em,
.dark-purple h3 em {
    color: var(--accent1);
}

.panther-purple a,
.dark-purple a,
.panther-purple.text-block li a,
.dark-purple.text-block li a {
    color: var(--secondary);
}

.panther-purple table a,
.dark-purple table a {
    color: var(--primary);
}

.panther-purple table a:hover,
.dark-purple table a:hover {
    color: var(--accent4);
}

.panther-purple .field-name-field-block-body,
.dark-purple .field-name-field-block-body,
.panther-purple a:hover,
.dark-purple a:hover,
.panther-purple .field--name-field-link a,
.dark-purple .field--name-field-link a,
.panther-purple h2.styled,
.dark-purple h2.styled,
.teal h2,
.teal h2.proxima,
.purple h2,
.purple h2.proxima,
.panther-purple h2,
.dark-purple h2,
.dark-purple h2.proxima,
.teal h3,
.purple h3,
.panther-purple h3,
.dark-purple h3,
.teal h4,
.purple h4,
.panther-purple h4,
.dark-purple h4,
.teal h5,
.purple h5,
.panther-purple h5,
.dark-purple h5,
.teal .h2,
.purple .h2,
.panther-purple .h2,
.dark-purple .h2,
.teal .h3,
.purple .h3,
.panther-purple .h3,
.dark-purple .h3,
.teal .h4,
.purple .h4,
.panther-purple .h4,
.dark-purple .h4,
.teal .h5,
.panther-purple .h5,
.dark-purple .h5 {
    color: white;
}

.dark-purple a.btn-primary:hover,
.dark-purple a.btn-primary:active,
.dark-purple a.btn-primary:not(:disabled):not(.disabled):active {
    background: var(--accent2);
}

.purple-top > .container {
    border-top: solid 0.25rem var(--primary);
    padding: 3rem 1.2rem !important;
}

.goldenrod-top > .container {
    border-top: solid 0.25rem var(--secondary);
    padding: 3rem 1.2rem !important;
}

.sunset-top > .container {
    border-top: solid 0.25rem var(--accent4);
    padding: 3rem 1.2rem !important;
}

.fountain-top > .container {
    border-top: solid 0.25rem var(--accent1);
    padding: 3rem 1.2rem !important;
}

.firefly-top > .container {
    border-top: solid 0.25rem var(--accent5);
    padding: 3rem 1.2rem !important;
}

.spring-top > .container {
    border-top: solid 0.25rem var(--accent2);
    padding: 3rem 1.2rem !important;
}

#skiptomain {
    color: black;
}

.rich-title {
    width: 100%;
}

.rich-title h2 strong {
    color: var(--accent2);
}

body.cke_editable h2 strong {
    color: var(--accent2);
}

.block-field-blocknodepagetitle,
.block-page-title-block h1.page-title {
    margin-top: 1rem;
}

.lh-0 {
    line-height: 0;
}

/** CKEDITOR TEMPLATES **/

/*collapse text*/

.collapse-text-details {
    border: none;
    padding: 15px 0;
}

/*collapse-text general styles*/

.ckeditor-accordion-container > dl {
    border: 0 none;
}

.ckeditor-accordion-container > dl dd {
    margin-top: 1rem !important;
}

.ckeditor-accordion-container > dl dt > a,
.ckeditor-accordion-container > dl dt > a:not(.button) {
    background: var(--gray2);
    margin: 0;
    color: var(--dark);
    font-weight: bold;
    line-height: 1.75rem;
    position: relative;
    font-size: 1.5rem;
    text-decoration: none;
    border-bottom: 0 none;
    padding: 15px 15px 15px 50px;
    margin-bottom: 0.75rem;
}

.ckeditor-accordion-container > dl dt:last-of-type > a {
    border-bottom: 0 !important;
}

/*.ckeditor-accordion-container > dl {
    border: 0 none;
}
*/
/*.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::before {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    content: "\f0fe";
    font-family: "Font Awesome 6 Free";
    color: var(--accent1);
    font-weight: 900;
}

.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::after {
    display: none;
}*/

.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle {
    top: auto;
    background: var(--accent1);
    border-radius: 6px;
}

.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::before,
.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::after {
    top: calc(50% - 1px);
}

.ckeditor-accordion-container > dl dt > a:hover,
.ckeditor-accordion-container > dl dt > a:not(.button):hover {
    background-color: var(--accent3a);
    color: var(--dark);
}

.collapse-text-details summary {
    color: var(--dark);
    font-weight: bold;
    line-height: 1.75rem;
    position: relative;
    font-size: 1.5rem;
}

details.collapse-text-details > summary {
    list-style: none;
    padding: 0;
}

details.collapse-text-details > summary::-webkit-details-marker {
    display: none;
}

details.collapse-text-details > .details-wrapper {
    padding: 15px 0;
}

details.collapse-text-details.style1 {
    border-top: 4px solid var(--accent2);
    margin: 0;
}

form details.collapse-text-details.style1:last-of-type {
    border-bottom: 4px solid var(--accent2);
}

details.collapse-text-details.style1 > summary {
    color: var(--primary);
    padding-left: 15px;
}

details.collapse-text-details.style1 .details-wrapper {
    padding-left: 15px;
}

details.collapse-text-details.style1 > summary::after {
    content: "+";
    float: right;
    color: var(--accent1);
    font-weight: bold;
    font-size: 3rem;
}

details.collapse-text-details.style1[open] > summary::after {
    content: "–";
    color: var(--primary);
}

details.collapse-text-details.style1[open] > summary,
details.collapse-text-details.style2[open] > summary {
    color: var(--dark);
}

details.collapse-text-details.style2 {
    background: var(--gray2);
    padding-left: 15px;
    margin: 0 0 10px;
    padding-right: 15px;
}

details.collapse-text-details.style2 > summary {
    padding-left: 30px;
}

details.collapse-text-details.style2 > summary::before {
    content: "\f0fe";
    font-family: "Font Awesome 6 Free";
    color: var(--accent1);
    padding-right: 15px;
    position: absolute;
    left: 0;
    font-weight: 900;
}

details.collapse-text-details.style2[open] > summary::before {
    content: "\f146";
}

details.collapse-text-details.style2 .details-wrapper {
    padding-left: 2.5rem;
}

/** END CKEDITOR TEMPLATES **/

/** FORM STYLES **/

select,
textarea,
input {
    background: var(--accent3b);
    padding: 0.8rem 1rem !important;
    color: var(--primary);
    font-family: "proxima-nova";
    font-size: 1.125rem;
    font-weight: 400;
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    max-width: 100%;
}

input[type="submit"] {
    border: none;
    background: none var(--secondary);
    background-size: 1.2rem;
    padding: 0.8rem 2.4rem;
    color: var(--dark);
    font-weight: 700;
    border-radius: 1.8rem;
    text-align: center;
    cursor: pointer;
    transition: all 300ms ease-in-out;
}

input[type="submit"]:hover {
    background: none var(--dark);
    background-size: 1.2rem;
    color: white;
}

label {
    font-size: 1.125rem;
    margin-bottom: 0;
    display: block;
    font-weight: bold;
}

.diff-button {
    margin-top: 20px;
}

.field--name-body form .container {
    padding: 0;
}

/** END FORM STYLES **/

/** TABLE STYLES **/

table {
    height: auto !important;
    width: 100% !important;
    max-width: 100%;
    border: 0 none !important;
    background: #fff;
    table-layout: fixed;
}

tbody,
td,
th,
tr {
    border: 0 none;
}

th {
    border-bottom: 4px solid var(--accent2);
    font-weight: bold;
    font-size: 110%;
    background-color: var(--light);
    vertical-align: bottom;
    padding: 1.2rem;
}

th p,
td p {
    margin-bottom: 0;
}

td {
    padding: 1.2rem;
    vertical-align: middle;
}

tr.even,
tr.odd,
tr {
    background-color: transparent;
    border-bottom: 1px solid var(--gray3);
    padding: 0;
}

tr:nth-child(even) {
    background-color: var(--light);
}

tr:hover {
    background-color: var(--accent3b);
}

thead tr:hover {
    background: inherit;
}

.table td {
    vertical-align: middle;
}

.table td,
.table th {
    border-top: 1px solid var(--gray3);
}

#block-system-main table {
    height: auto !important;
    width: 100% !important;
    max-width: 100%;
    table-layout: fixed;
}

/** END TABLE STYLES **/

/** GENERIC VIEWS STYLES **/

nav.pager {
    margin-top: 10px;
}

nav.pager li {
    line-height: 3.125rem;
}

nav.pager .pager__item--next a,
nav.pager .pager__item--last a {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: inline-block;
    transition: all 300ms ease-in-out;
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    border: 0.1875rem solid transparent;
    background-size: 25px auto;
    text-indent: -9999px;
}

nav.pager .pager__item--last a {
    background: url("../images/purple-double-arrow.png") center center no-repeat var(--secondary);
    background-size: 25px auto;
}

nav.pager .pager__item---next a:hover,
nav.pager .pager__item---previous a:hover {
    background: url("../images/white-arrow.png") center center no-repeat var(--primary);
    background-size: 25px auto;
    border: 0.1875rem solid var(--dark);
}

nav.pager .pager__item--previous a,
nav.pager .pager__item--first a {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    transition: all 300ms ease-in-out;
    display: inline-block;
    transform: rotate(180deg);
    background: url("../images/purple-arrow.png") center center no-repeat transparent;
    background-size: 25px auto;
    border: 0.1875rem solid var(--secondary);
    color: var(--dark);
    text-indent: -9999px;
}

nav.pager .pager__item--first a {
    background: url("../images/purple-double-arrow.png") center center no-repeat transparent;
    background-size: 25px auto;
}

.pager__item.is-active a {
    color: var(--accent4);
}

/** END GENERIC VIEWS STYLES **/

/** PAGE HEADER STYLES **/

/* .page-header .full-img {
    position: relative;
    height: 553px;
    overflow: hidden;
} */

/* .page-header .full-img .picture img {
    width: auto;
    height: auto;
    z-index: 0;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    max-width: none;
} */

.page-header .full-img.container .picture .full-width,
.page-header .full-img .picture .content-width {
    visibility: hidden;
}

.page-header .full-img.container .picture .content-width {
    visibility: visible;
}

.page-header {
    position: relative;
}

.header-slices {
    width: 346px;
    height: 537.5px;
    background: url("../images/header-slices-min.png") center center no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    pointer-events: none;
    display: none;
}

.header-img .header-slices {
    display: none;
}

/** END PAGE HEADER STYLES **/

/** BREADCRUMB STYLES **/

#block-breadcrumbs {
    width: 100%;
}

.region-breadcrumbs .breadcrumb {
    margin: 0;
    padding: 6px 0 5px;
    color: white;
    background: var(--dark);
    font-family: "proxima-nova";
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.002rem;
    border-radius: 0;
    position: relative;
    z-index: 3;
}

.region-breadcrumbs .breadcrumb .bread-sep {
    color: var(--secondary);
    padding: 0 0.2rem;
    display: inline-block;
}

.region-breadcrumbs .breadcrumb a {
    color: var(--secondary);
    text-transform: uppercase;
    transition: all 300ms ease-in-out;
}

.region-breadcrumbs .breadcrumb a:hover {
    color: #ffffff;
    text-decoration: none;
}

.region-breadcrumbs .breadcrumb li::before {
    content: "/";
}

.region-breadcrumbs .breadcrumb li:first-child::before {
    content: none;
}

/** END BREADCRUMB STYLES **/

/** SECTION MENU STYLES **/

.menu li {
    position: relative;
}

.menu-holder {
    z-index: 3;
    position: relative;
    margin-bottom: 3rem;
}

.section-menu {
    background: var(--primary);
    position: relative;
    color: #fff;
    padding: 1rem;
    display: block;
    margin-top: -2rem;
    margin-bottom: -2rem;
}

.no-header-img .section-menu {
    margin-top: 1rem;
}

.section-menu ul,
.section-menu li {
    margin: 0;
    padding: 0;
    list-style: none;
    position: relative;
}

.section-menu a,
.section-menu span {
    font-family: "proxima-nova";
    font-size: 1.375rem;
    font-weight: 800;
    color: white;
    transition: all 300ms ease-in-out;
    padding: 0.2rem 0;
    display: inline-block;
    line-height: 1.5;
}

.section-menu a:hover {
    color: var(--secondary);
    text-decoration: none;
}

.section-menu a:focus {
    outline: 0.5px dotted rgba(255, 255, 255, 0.3);
}

.section-menu .department {
    padding: 0 0 1rem;
}

.section-menu .department a {
    font-size: 1rem;
    line-height: 0.2rem;
    font-weight: 400;
    display: inline;
}

.section-menu .sub-menu div {
    position: relative;
    padding-right: 50px;
}

.section-menu .sub-menu ul {
    padding-bottom: 1rem;
    padding-left: 1rem;
}

.section-menu .sub-menu ul a,
.section-menu .sub-menu ul span {
    font-weight: 400;
    font-size: 1rem;
    color: #fff;
}

.section-menu .sub-menu ul a.active {
    color: var(--secondary);
}

.section-menu li a.active {
    color: var(--secondary);
}

.section-menu .sub-menu ul a:hover {
    color: var(--accent1);
}

.section-menu button.btn:focus {
    text-decoration: none;
    box-shadow: none;
}

.section-menu button {
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0.2rem;
    color: #d4a3ef;
    font-family: "proxima-nova";
    transition: color 300ms ease-in-out;
    z-index: 2;
}

.section-menu button[aria-expanded="true"]::after {
    content: "-";
    font-size: 3rem;
    font-weight: 400;
}

.section-menu button[aria-expanded="false"]::after {
    content: "+";
    font-size: 2rem;
    font-weight: 900;
    margin-top: 0;
}

.section-menu button[aria-expanded="false"]:hover::after,
.section-menu button[aria-expanded="true"]:hover::after {
    color: var(--secondary);
    transition: color 300ms ease-in-out;
}

.section-menu button.btn-link:hover {
    text-decoration: none;
    color: var(--secondary);
}

/** END SECTION MENU STYLES **/

/** LAYOUT BUILDER SECTIONS **/

.layout--twocol,
.layout--threecol,
.layout--fourcol {
    padding: 0 15px;
}

.layout--twocol a.btn-primary,
.layout--threecol a.btn-primary,
.layout--fourcol a.btn-primary,
.layout--twocol p:last-of-type,
.layout--threecol p:last-of-type,
.layout--fourcol p:last-of-type {
    margin-bottom: 0;
}

.layout--twocol .layout__region,
.layout--threecol .layout__region,
.layout--fourcol .layout__region {
    position: relative;
    display: flex;
    flex-direction: column;
    flex-grow: 1 !important;
    min-height: 200px;
}

.layout--twocol .layout__region .block,
.layout--threecol .layout__region .block,
.layout--fourcol .layout__region .block {
    flex-grow: 1;
    display: flex;
    align-items: center;
}

.layout--twocol .image-caption .container,
.layout--threecol .image-caption .container,
.layout--fourcol .image-caption .container {
    padding: 0;
}

/*.square-img {
    min-height: 305px;
}*/

.square-image,
.rectangle-image {
    align-items: stretch !important;
    min-height: 400px;
    background: var(--accent3);
}

.rectangle-image {
    min-height: 450px;
}

.layout--twocol .square-image {
    min-height: 400px;
}

.square-image picture,
.rectangle-image picture {
    flex: 1;
    display: flex;
    overflow: hidden;
    position: relative;
    margin: 0;
}

.square-image img,
.rectangle-image img {
    margin: 0 auto;
    max-height: none;
    max-width: none;
    min-height: 400px;
    width: auto;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.rectangle-image img {
    min-height: 450px;
}

/** END LAYOUT BUILDER SECTIONS **/

/** OWL CAROUSEL STYLES **/

.owl {
    position: relative;
    padding-bottom: 25px;
}

.owl .owl-nav {
    margin-top: 0;
    position: absolute;
    bottom: 0.4rem;
    left: -1rem;
    right: -1rem;
    z-index: 9;
}

.owl.row {
    margin: auto;
}

.owl .owl-nav [class*="owl-"]:hover,
.owl .owl-nav button:hover,
.owl .owl-nav button {
    background: transparent !important;
    border-radius: 0;
}

.owl .owl-nav span {
    width: 44px;
    height: 44px;
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 20px auto;
    border-radius: 50%;
    display: block;
    color: var(--secondary);
    border: 3px solid var(--secondary);
    transition: all 300ms ease-in-out;
}

.owl .owl-nav .owl-next {
    right: -0.2rem;
    position: absolute;
    bottom: 0;
}

.owl .owl-nav .owl-prev {
    left: -0.2rem;
    position: absolute;
    bottom: 0;
}

.owl .owl-nav .owl-prev span {
    transform: rotate(180deg);
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 20px auto;
}

.owl .owl-nav span:hover {
    background: url("../images/yellow-arrow.png") center center no-repeat var(--dark);
    background-size: 20px auto;
    transition: all 300ms ease-in-out;
}

/*.owl .owl-dots {
    position: absolute;
    bottom: 1rem;
    left: 3.3rem;
    margin-top: 0;
    z-index: 9;
}

.owl .owl-dots .owl-dot:hover span,
.owl .owl-dots .owl-dot span {
    background: transparent;
    border: 2px solid var(--secondary);
    margin-left: 0;
    margin-right: 5px;
    height: 11px;
    width: 11px;
}

.owl .owl-dots .owl-dot:hover.active span,
.owl .owl-dots .owl-dot.active span {
    background: rgba(255, 181, 0, 0.6);
}

.owl-has-link .owl-dots {
    bottom: 5rem !important;
}*/

/** END OWL CAROUSEL STYLES **/

/** LEAD TEXT BLOCK **/

.btn {
    border: 0 none;
    border-radius: 0;
    text-decoration: none;
}

.node__content h2 {
    margin-bottom: 2rem;
}

.node__content {
    color: var(--dark);
    font-weight: 400;
}

.node-body {
    padding-top: 3rem;
}

.lead-text .field--name-field-link a:hover,
a.btn-primary:hover,
a.btn-primary:active,
a.btn-primary:not(:disabled):not(.disabled):active {
    border: none;
    background: var(--dark);
    color: white;
    text-decoration: none;
    box-shadow: none;
}

.lead-text .field--name-field-link {
    padding-top: 2rem;
}

.layout__region--content {
    position: relative;
    z-index: 8;
}

h2.lead-text {
    margin-bottom: 1.5rem;
}

/** END LEAD BLOCK COMPONENT **/

/** FULL WIDTH LINK LIST COMPONENT **/

.full-width-link-list {
    padding: 3rem 0;
    position: relative;
}

.full-width-link-list::before {
    content: "";
    position: absolute;
    display: block;
    inset: 4.2rem 0 0;
    background: var(--accent3b);
    z-index: 0;
}

.full-width-link-list a {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 800;
    text-decoration: underline;
    -webkit-text-decoration-color: var(--accent1);
    text-decoration-color: var(--accent1);
    display: inline-block;
    position: relative;
    margin: 0.4rem;
    transition: all 300ms ease-in-out;
    line-height: 1rem;
}

.full-width-link-list .side-links a::after {
    display: inline-block;
    content: "";
    width: 30px;
    height: 30px;
    border: 3px solid var(--secondary);
    background: url("../images/dark-purple-arrow.png") center center no-repeat;
    background-size: 14px auto;
    margin-left: 0.6rem;
    margin-right: 1.4rem;
    border-radius: 50%;
    position: relative;
    top: 0.6rem;
    transition: all 300ms ease-in-out;
}

.full-width-link-list .side-links a:hover::after {
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 14px auto;
}

.full-width-link-list .side-links {
    justify-content: flex-end;
    align-items: center;
}

.full-width-link-list .side-links a:hover {
    color: var(--dark);
    -webkit-text-decoration-color: var(--accent1);
    text-decoration-color: var(--accent1);
}

.full-width-link-list .side-links .field--name-field-link {
    display: block;
}

/** END FULL WIDTH LINK LIST COMPONENT **/

/** FULL-WIDTH BUTTON COMPONENT **/

.full-width-button {
    padding: 3rem 0;
    position: relative;
    overflow: hidden;
}

.full-width-button::after {
    content: "";
    inset: 70% 0 0;
    display: block;
    background: var(--accent3);
    position: absolute;
    z-index: 0;
}

.full-width-button a.full-link {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 800;
    letter-spacing: -0.025rem;
    position: relative;
    display: block;
    text-decoration: underline;
    -webkit-text-decoration-color: var(--accent1);
    text-decoration-color: var(--accent1);
    z-index: 1;
    transition: all 200ms ease-in-out;
    text-align: center;
    margin: auto;
    font-size: 1.6rem;
    padding: 0 2rem;
}

.full-width-button a.full-link.goldenrod {
    transition: all 300ms ease-in-out;
    text-decoration: underline rgba(255, 255, 255, 0);
    padding-left: 3rem;
}

.full-width-button a.full-link.goldenrod:hover {
    text-decoration: underline rgba(46, 26, 71, 1);
    transition: all 300ms ease-in-out;
    letter-spacing: normal;
}

.full-width-button a.full-link::after {
    content: "";
    display: block;
    z-index: -1;
    transition: width 300ms ease-in-out;
    margin: 3rem auto 0;
    width: 66px;
    height: 66px;
    border-radius: 66px;
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 18px auto;
}

/** END FULL-WIDTH BUTTON COMPONENT **/

/** TWO COLUMN CALLOUT, TWO COLUMN LINK LIST & CAROUSEL COMPONENTS **/

.carousel-component,
.two-column-link,
.two-column-callout {
    width: 100%;
    overflow: hidden;
    clear: both;
    position: relative;
    padding-top: 2rem;
    padding-bottom: 2rem;
    min-height: 640px;
}

.carousel-component::before,
.two-column-link::before,
.two-column-callout::before {
    content: "";
    position: absolute;
    display: block;
    inset: 0 0 50%;
    background: var(--accent3);
    z-index: -1;
}

.carousel-component::before {
    top: 50%;
    bottom: 0;
}

.carousel::after,
.carousel-slide::after,
.carousel-component::after {
    display: block;
    content: "";
    clear: both;
}

.carousel-slide,
.two-column-link .container,
.two-column-callout .container {
    position: relative;
    z-index: 1;
}

.carousel-slide .column-body,
.two-column-callout .column-body,
.two-column-link .column-body {
    background: white;
    border-top: 4px solid var(--secondary);
    margin-right: 2rem;
    padding: 2rem;
    position: relative;
    z-index: 2;
}

.carousel-slide .column-body h2,
.two-column-link .column-body h2,
.two-column-callout .column-body h2 {
    max-width: 450px;
}

.two-column-callout .field--name-body {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 400;
}

.carousel-slide .link a,
.two-column-callout .field--name-field-link-two-column-callout a {
    font-family: "proxima-nova";
    color: var(--dark);
    font-weight: 700;
    text-transform: uppercase;
    position: relative;
    display: inline-block;
    padding: 0.7rem 2rem 0 0;
    margin-bottom: 0.5rem;
}

.carousel-slide .link a {
    transition: all 300ms ease-in-out;
    -webkit-text-decoration-color: var(--secondary);
    text-decoration-color: var(--secondary);
}

.carousel-slide .link a::before,
.two-column-callout .field--name-field-link-two-column-callout a::before {
    content: "";
    left: 0;
    right: 0;
    bottom: -0.6rem;
    position: absolute;
    display: block;
    height: 0.25rem;
    background: var(--secondary);
}

.carousel-slide .link a::after,
.two-column-callout .field--name-field-link-two-column-callout a::after {
    content: "→";
    right: 0;
    bottom: 0;
    position: absolute;
    display: block;
    font-weight: 900;
    font-family: "proxima-nova";
}

.carousel-slide .link a:hover,
.two-column-callout .field--name-field-link-two-column-callout a:hover {
    color: var(--primary);
    text-decoration: none;
}

.two-column-link .field--name-field-two-col-links a {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 700;
    display: block;
    border-bottom: 2px solid var(--accent1);
    padding: 0.8rem 0 0.4rem;
    text-decoration: none;
    text-transform: uppercase;
    position: relative;
    transition: all 300ms ease-in-out;
}

.two-column-link .field--name-field-two-col-links a::after {
    content: "→";
    right: 0;
    bottom: 5px;
    position: absolute;
    display: block;
    font-weight: 900;
    font-family: "proxima-nova";
}

.two-column-link .field--name-field-two-col-links a:hover {
    border-bottom-color: var(--secondary);
}

.carousel-slide .img-wrap,
.two-column-link .img-wrap,
.two-column-callout .img-wrap {
    margin-top: -4rem;
    position: relative;
    z-index: 1;
}

.carousel-slide .img-wrap img,
.two-column-link .img-wrap img,
.two-column-callout .img-wrap img {
    width: 100%;
    height: auto;
}

.two-column-link.left .img-wrap,
.two-column-callout.left .img-wrap {
    margin-top: 0;
    margin-bottom: -4rem;
}

.two-column-link.right .img-wrap,
.two-column-callout.right .img-wrap {
    margin-top: 0;
    margin-bottom: -4rem;
}

.carousel-component .img-wrap {
    margin-top: 0;
}

.carousel-component .carousel-slide {
    margin-top: 0;
    padding-top: 0;
}

.carousel-component .column-body {
    margin-right: 0;
    margin-left: 2rem;
    margin-top: -4rem;
}

.two-column-callout.full-width-on {
    padding: 0;
    overflow: visible;
}

.two-column-callout.full-width-on::before {
    display: none;
}

.two-column-callout.full-width-on .column-body {
    top: 70%;
    transform: translateY(-50%);
    margin-right: 0;
}

.two-column-callout.full-width-on .container {
    position: absolute;
    inset: 0;
}

.two-column-callout.full-width-on .full-img-wrap {
    position: relative;
    overflow: hidden;
}

.two-column-callout.full-width-on .full-img-wrap img {
    width: 100%;
    height: auto;
}

.carousel-component {
    position: relative;
    overflow: visible;
}

.carousel-component .carousel-nav {
    overflow: hidden;
    position: absolute;
    top: 0;
    margin-top: -6rem;
    z-index: 99;
    right: 2rem;
}

.carousel-component .single .carousel-nav {
    display: none !important;
}

.carousel-component .carousel-nav a {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: block;
    margin-left: 1rem;
    transition: all 300ms ease-in-out;
    background: url("../images/dark-purple-arrow.png") center center no-repeat white;
    border: 0.1875rem solid white;
    background-size: 25px auto;
}

.carousel-component .carousel-nav a.prev {
    transform: rotate(180deg);
    margin-left: 0;
    background: url("../images/purple-arrow.png") center center no-repeat rgba(255, 255, 255, 0.5);
    background-size: 25px auto;
    border: 0.1875rem solid white;
}

.carousel-component .carousel-nav a:hover {
    background: url("../images/white-arrow.png") center center no-repeat var(--primary);
    background-size: 25px auto;
    border: 0.1875rem solid var(--dark);
}

.carousel-component .carousel-nav a.prev:hover {
    border: 0.1875rem solid var(--secondary);
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 25px auto;
}

.carousel-component .carousel-nav .sr-only {
    color: black;
    background: white;
}

.carousel-component .total {
    position: absolute;
    top: 0;
    left: 0;
    background: var(--accent1);
    color: #ffffff;
    font-family: "proxima-nova";
    font-size: 1.17rem;
    font-weight: 700;
    text-align: center;
    padding: 0.8rem 0;
    z-index: 9;
    width: 3.265rem;
    pointer-events: none;
}

.carousel.carousel-fade .carousel-item {
    display: block;
    opacity: 0;
    transition: opacity ease-out 0.7s;
    position: absolute;
}

.carousel.carousel-fade .carousel-item.active {
    opacity: 1 !important;
    position: relative;
}

/** END TWO COLUMN CALLOUT & TWO COLUMN LINK LIST COMPONENTS **/

/** LINK LIST COMPONENT **/

.link-list {
    padding: 3rem 0;
    background: var(--accent3);
}

.link-list-wrap {
    background: white;
    border-top: 4px solid var(--secondary);
    padding: 3rem;
}

.link-list .fountain-btn a {
    display: block;
    padding: 0.8rem 2rem;
    margin: 0;
    margin-bottom: 1rem;
}

.link-list .col-lg-6 .text-inner {
    margin: auto;
    max-width: 450px;
}

.link-list .field--name-field-links-list {
    margin-top: 1.4rem;
}

/** END LINK LIST COMPONENT **/

/** ACCORDION COMPONENT **/

.accordion {
    position: relative;
    overflow: hidden;
    padding: 0;
}

.accordion a.accordion-title {
    color: var(--dark);
    font-family: "proxima-nova";
    font-weight: 800;
    letter-spacing: -0.0208rem;
    position: relative;
    z-index: 2;
    display: block;
    text-decoration: none;
    font-size: 1.8rem;
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.accordion a.accordion-title .container {
    position: relative;
}

.accordion a.accordion-title:hover {
    -webkit-text-decoration-color: var(--secondary);
    text-decoration-color: var(--secondary);
}

.accordion a.accordion-title::before {
    content: "";
    position: absolute;
    display: block;
    inset: 65% 0 0;
    background: var(--accent3b);
    z-index: 0;
}

.accordion a.collapsed {
    text-decoration: underline;
    -webkit-text-decoration-color: var(--accent1);
    text-decoration-color: var(--accent1);
}

.accordion a.collapsed::before {
    background: var(--accent3);
}

.accordion .accordion-content {
    background: var(--accent3b);
    color: var(--dark);
    padding: 0 0 3rem;
    overflow: hidden;
}

.accordion a.accordion-title .container::after {
    content: "";
    background: url("../images/dark-purple-x.png") center center no-repeat var(--secondary);
    background-size: 15px auto;
    border-radius: 50%;
    border: 0.3125rem solid var(--dark);
    transition: all 300ms ease-in-out;
    width: 3.5rem;
    height: 3.5rem;
    display: inline-block;
    position: relative;
    top: 1rem;
    left: 1rem;
}

.accordion a.accordion-title .container:hover::after {
    border: 0.3125rem solid var(--dark);
}

.accordion a.accordion-title .container:focus::after {
    outline: 0.5px dotted rgba(0, 0, 0, 0.4);
}

.accordion a.collapsed .container::after {
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    transform: rotate(90deg);
    border-color: var(--secondary);
    background-size: 15px auto;
}

.accordion .accordion-content a {
    color: var(--dark);
    font-weight: 700;
    text-decoration: underline;
    -webkit-text-decoration-color: var(--dark);
    text-decoration-color: var(--dark);
    margin: 0;
    padding: 0;
}

.accordion .field--name-body a {
    font-size: 1.17rem;
    display: inline;
}

.accordion .field--name-field-accordion-link a {
    padding-top: 1rem;
    margin-bottom: 1rem;
    font-size: 1.17rem;
    display: block;
}

.accordion .field--name-field-accordion-link a:hover {
    color: var(--primary);
}

.accordion .accordion-content.show {
    height: auto;
}

/** END ACCORDION COMPONENT **/

/** SOCIAL LINKS / CONTACT COMPONENT **/

.contact-social {
    padding: 3rem 0;
    position: relative;
}

.contact-social .block-subtitle {
    margin-bottom: 1rem;
}

.contact-social .social-links a {
    background: var(--accent1);
    color: white !important;
}

.contact-social .social-links a::before {
    display: none;
}

.contact-social .social-links a:hover {
    color: var(--dark);
    background: var(--secondary);
}

.contact-social.top-border h3 em {
    color: var(--accent1);
}

.contact-social.top-border .contact-body {
    padding-bottom: 2rem;
    color: var(--dark);
}

.contact-social .h3.form-title {
    display: none;
}

.contact-social.prexys-pond input,
.contact-social.prexys-pond textarea {
    background: #fff;
}

/** END SOCIAL LINKS / CONTACT COMPONENT **/

/** SOCIAL MEDIA LINKS **/

.social-links {
    display: flex;
}

.social-links a {
    background: var(--secondary);
    text-align: center;
    border-radius: 50%;
    color: var(--dark);
    display: inline-block;
    margin-right: 0.6rem;
    position: relative;
    overflow: hidden;
    transition: all 300ms ease-in-out;
    width: 56px;
    height: 56px;
    font-size: 2rem;
}

.social-links a::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    inset: 50% 0 0 50%;
    background: var(--accent1);
    transform: translateY(-50%) translateX(-50%);
    transition: all 300ms ease-in-out;
    z-index: 1;
    border-radius: 50%;
}

.social-links a .fab,
.social-links a .fa-brands {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    z-index: 2;
}

.social-links a:hover {
    color: white;
    background: transparent;
}

.social-links a:hover::before {
    width: 100%;
    height: 100%;
}

.social-links li:last-child a {
    margin-right: 0;
}

/** END SOCIAL MEDIA LINKS **/

/** TEXT BLOCK COMPONENT **/

.text-block > .container {
    padding: 3rem 1.2rem;
    clear: both;
}

.text-block .field-name-field-block-body {
    color: var(--dark);
    font-weight: normal;
    width: 100%;
}

.text-block .field--name-field-link {
    padding-top: 1rem;
}

.text-block li a {
    color: var(--primary);
    font-weight: bold;
    text-decoration: underline;
}

.text-block .field--name-field-link a {
    color: #ffffff;
    font-family: "proxima-nova";
    font-size: 1.17rem;
    font-weight: 700;
    background: var(--accent1);
    padding: 0.8rem 2rem;
    margin: 0;
    text-transform: none;
    transition: all 300ms ease-in-out;
    margin-bottom: 1rem;
    display: inline-block;
    width: 100%;
    text-align: center;
    text-decoration: none;
}

.text-block .field--name-field-link a:hover {
    background: var(--dark);
    color: white;
    text-decoration: none;
}

.dark-purple .field--name-field-link a:hover {
    background: var(--primary);
}

.gray-left,
.gray-right {
    position: relative;
}

.gray-right::after,
.gray-left::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: -1;
    background: linear-gradient(-70.5deg, #f4f3f0 40%, #fff 0%);
    max-height: 700px;
}

.gray-left::after {
    background: linear-gradient(70.5deg, #f4f3f0 40%, #fff 0%);
}

.text-block.panther-purple table,
.text-block.dark-purple table,
.text-block.panther-purple table h2,
.text-block.dark-purple table h2,
.text-block.panther-purple table h2.proxima,
.text-block.dark-purple table h2.proxima,
.text-block.panther-purple table h3,
.text-block.dark-purple table h3,
.text-block.panther-purple table h4,
.text-block.dark-purple table h4,
.text-block.panther-purple table h5,
.text-block.dark-purple table h5 {
    color: var(--dark);
}

.text-block .col-sm-6:nth-of-type(2n) hr,
.text-block .col-md-6:nth-of-type(2n) hr,
.text-block .col-lg-3:nth-of-type(2n) hr,
.text-block .col-sm-4:nth-of-type(2n) hr,
.text-block .col-md-4:nth-of-type(2n) hr,
.text-block .col-sm-6:nth-of-type(2n) .hr,
.text-block .col-md-6:nth-of-type(2n) .hr,
.text-block .col-lg-3:nth-of-type(2n) .hr,
.text-block .col-sm-4:nth-of-type(2n) .hr,
.text-block .col-md-4:nth-of-type(2n) .hr {
    border-top: 4px solid var(--accent1);
}

.text-block .row:nth-of-type(2n) .col-sm-6 hr,
.text-block .row:nth-of-type(2n) .col-md-6 hr,
.text-block .col-sm-4:nth-of-type(3n) hr,
.text-block .col-md-4:nth-of-type(3n) hr,
.text-block .col-lg-3:nth-of-type(3n) hr,
.text-block .row:nth-of-type(2n) .col-sm-6 .hr,
.text-block .row:nth-of-type(2n) .col-md-6 .hr,
.text-block .col-sm-4:nth-of-type(3n) .hr,
.text-block .col-md-4:nth-of-type(3n) .hr,
.text-block .col-lg-3:nth-of-type(3n) .hr {
    border-top: 4px solid var(--accent2);
}

.text-block .row:nth-of-type(2n) .col-sm-6:nth-of-type(2n) hr,
.text-block .row:nth-of-type(2n) .col-md-6:nth-of-type(2n) hr,
.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(1n) hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(1n) hr,
.text-block .col-sm-8:nth-of-type(2n) hr,
.text-block .col-md-8:nth-of-type(2n) hr,
.text-block .col-lg-3:nth-of-type(4n) hr,
.text-block .row:nth-of-type(2n) .col-sm-6:nth-of-type(2n) .hr,
.text-block .row:nth-of-type(2n) .col-md-6:nth-of-type(2n) .hr,
.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(1n) .hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(1n) .hr,
.text-block .col-sm-8:nth-of-type(2n) .hr,
.text-block .col-md-8:nth-of-type(2n) .hr,
.text-block .col-lg-3:nth-of-type(4n) .hr {
    border-top: 4px solid var(--accent5);
}

.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(2n) hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(2n) hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(1n) hr,
.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(2n) .hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(2n) .hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(1n) .hr {
    border-top: 4px solid var(--accent3a);
}

.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(3n) hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(3n) hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(2n) hr,
.text-block .row:nth-of-type(2n) .col-sm-4:nth-of-type(3n) .hr,
.text-block .row:nth-of-type(2n) .col-md-4:nth-of-type(3n) .hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(2n) .hr {
    border-top: 4px solid var(--accent4);
}

.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(3n) hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(3n) .hr {
    border-top: 4px solid var(--primary);
}

.text-block.panther-purple .row:nth-of-type(2n) .col-lg-3:nth-of-type(3n) hr,
.text-block.panther-purple .row:nth-of-type(2n) .col-lg-3:nth-of-type(3n) .hr {
    border-top: 4px solid #1f0047;
    /**Campaniling but darker**/
}

.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(4n) hr,
.text-block .row:nth-of-type(2n) .col-lg-3:nth-of-type(4n) .hr {
    border-top: 4px solid var(--secondary);
}

/** if text block is first component after lead text **/

.node__content .layout--onecol > .layout__region > .text-block.white:first-of-type > .container {
    padding: 0 1.2rem 3rem;
}

/** adds padding back in if no lead text **/

.node__content .layout--onecol:first-of-type > .layout__region > .text-block.white > .container {
    padding: 3rem 1.2rem;
}

/** END TEXT BLOCK COMPONENT **/

/** PULLED QUOTE COMPONENT **/
.pulled-quote > .container {
    padding: 3rem 1.2rem;
    clear: both;
}

.pulled-quote p,
.field--name-body blockquote p {
    margin: 0;
    padding: 0;
    display: inline;
}

.pulled-quote h3,
.field--name-body blockquote {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 1rem;
    font-family: "BlackerProDis-ExBd";
    font-weight: 400;
}

.field--name-body blockquote {
    margin: 0 auto 1rem 25%;
    width: 63%;
    position: relative;
}

.pulled-quote.text-left .quote-wrap {
    margin: 0 auto 1rem 25% !important;
    width: 63% !important;
}

.pulled-quote .author {
    font-family: "proxima-nova";
    font-size: 1.4rem;
    font-weight: 800;
    line-height: 2.125rem;
    letter-spacing: -0.025rem;
}

.pulled-quote .author-label {
    color: var(--gray1);
    font-family: "proxima-nova";
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1.25rem;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
}

.pulled-quote.dark-purple .author-label,
.pulled-quote.panther-purple .author-label {
    color: #fff;
}

.pulled-quote .field--name-field-quote::before,
.field--name-body blockquote::before {
    content: "“";
    display: block;
    color: var(--accent1);
    font-family: "proxima-nova";
    font-size: 10rem;
    font-weight: bold;
    line-height: 1rem;
}

.pulled-quote .col-12 .field--name-field-quote::before,
.field--name-body blockquote::before {
    position: absolute;
    left: -8rem;
    top: 4.2rem;
    font-size: 15rem;
}

.pulled-quote.text-center .col-12 .field--name-field-quote::before {
    position: relative;
    left: 0;
    top: 0;
    font-size: 10rem;
}

.field.field--name-field-quote {
    position: relative;
}

.pulled-quote .img-wrap {
    position: relative;
}

.pulled-quote img {
    margin-bottom: 2rem;
}

.pulled-quote.right .img-wrap::before {
    content: "";
    position: absolute;
    display: block;
    background: url("../images/menu-bg-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 350px;
    height: 187px;
    z-index: -1;
    bottom: -2.3rem;
    right: -2rem;
    left: unset;
}

.pulled-quote .img-wrap::before {
    content: "";
    position: absolute;
    display: block;
    background: url("../images/menu-bg-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 350px;
    height: 187px;
    z-index: -1;
    bottom: -2.3rem;
    right: unset;
    left: -2rem;
}

.pulled-quote.right .img-wrap {
    margin-top: 2rem;
}

/** END PULLED QUOTE COMPONENT **/

/** FULL-WIDTH IMAGE COMPONENT **/

.image-caption .image-title {
    padding: 0.8rem 0;
    font-family: "proxima-nova";
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.375rem;
    color: var(--dark);
}

/** END FULL-WIDTH IMAGE COMPONENT **/

/** FULL-WIDTH IMAGE OR VIDEO COMPONENT **/

.image-video {
    background: url("../images/slices-top-left.png") left top no-repeat;
    background-color: var(--primary);
    background-size: 515px auto;
    padding: 4rem 0 0;
    position: relative;
}

.image-video::before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    z-index: 0;
    background: url("../images/corners-right-bottom.png") right top no-repeat;
    background-size: auto 100%;
}

.image-video::after {
    content: "";
    display: block;
    position: absolute;
    inset: 90% 0 0;
    background: white;
    z-index: 0;
}

.image-video h2 {
    padding-bottom: 1.8rem;
}

.image-video img {
    position: relative;
    z-index: 3;
    border-bottom: 15px solid var(--secondary);
    overflow: hidden;
}

.image-video a {
    position: relative;
    text-align: center;
    display: block;
    overflow: hidden;
}

.image-video a img {
    width: 100%;
    height: auto;
    transform: scale(1);
    transition: all 500ms ease-in-out;
}

.image-video .video-button {
    color: white;
    font-family: "proxima-nova";
    font-weight: 800;
    letter-spacing: -0.025rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    text-decoration: underline;
    -webkit-text-decoration-color: var(--accent1);
    text-decoration-color: var(--accent1);
    z-index: 3;
    text-align: center;
    left: 0;
    right: 0;
    display: block;
    transition: all 300ms ease-in-out;
    font-size: 1.4rem;
}

.image-video .vid::after {
    background: url("../images/play-button.png") center center no-repeat var(--secondary);
    background-size: 100% auto;
    border-radius: 50%;
    content: "";
    display: inline-block;
    margin-left: 2rem;
    position: relative;
    top: 1rem;
    margin-top: -2rem;
    transition: all 300ms ease-in-out;
    height: 3.5rem;
    width: 3.5rem;
}

.image-video a:hover .video-button {
    -webkit-text-decoration-color: var(--secondary);
    text-decoration-color: var(--secondary);
}

.image-video a:hover .video-button span {
    background-size: 120% auto;
}

.image-video a:hover img {
    transform: scale(1.1);
}

/** END FULL-WIDTH IMAGE OR VIDEO COMPONENT **/

/** VIMEO HEADER COMPONENTS **/

.vimeo-header {
    background: url("../images/video-bg.png") var(--primary);
    color: #fff;
    background-size: cover;
}

.vimeo-content {
    margin: 0 -15px;
}

.vimeo-body {
    padding: 50px;
    align-self: center;
}

.vimeo-body p {
    margin-bottom: 2rem;
}

.vimeo-body p:last-of-type,
.vimeo-body a.btn-primary:last-of-type {
    margin-bottom: 0;
}

.vimeo-header #playBtn,
.vimeo-header #pauseBtn {
    position: absolute;
    right: 40px;
    bottom: 0;
    height: 30px;
    width: 30px;
    border-radius: 0;
    background-color: var(--primary);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.vimeo-overlay .vimeo-hero-dimensions {
    width: 1920px;
    height: 1080px;
    position: absolute !important;
    display: flex;
}

.vimeo-overlay .audio .vimeo-hero-dimensions {
    width: auto;
    height: auto;
    position: relative !important;
}

.vimeo-overlay .audio .hero-content {
    position: relative;
}

.vimeo-overlay #playBtn,
.vimeo-overlay #pauseBtn {
    position: absolute;
    background-color: var(--dark);
    width: 4.5rem;
    height: 3.375rem;
    left: auto;
    right: 0;
    bottom: 0;
    font-size: 1.5rem;
    line-height: 1.9;
    z-index: 2;
}

.vimeo-overlay .video button.btn:disabled,
.vimeo-header #vimeo-vid button.btn:disabled {
    display: none;
}

.vimeo-header .vb-contain {
    display: flex;
    order: 2;
}

.vimeo-header .vv-contain {
    order: 1;
}

.vimeo-header #vimeo-vid {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.vimeo-overlay .video.audio button {
    display: none;
}

.vimeo-header #vimeo-vid.audio button {
    display: none;
    inset: auto;
    height: 100px;
    width: 100px;
    border-radius: 100px;
    font-size: 2rem;
}

.vimeo-header .showPlay {
    display: flex !important;
}

.vimeo-overlay .video {
    width: 100%;
    font-size: 1.125rem;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    max-height: none;
    background-color: var(--primary);
}

.vimeo-overlay .video.audio {
    background-color: var(--dark);
    display: block;
    overflow: unset;
    min-height: auto;
}

.vimeo-overlay h2 {
    margin-top: 20px;
    color: #ffffff;
    font-size: 3.8rem;
    text-shadow:
        0 2px 4px rgb(0, 0, 0, 0.5),
        0 2px 6px rgb(0, 0, 0, 0.3);
}

.vimeo-overlay .fountain-btn a {
    display: block;
    background: var(--primary);
}

.vimeo-overlay .fountain-btn a:hover {
    background: var(--secondary);
    color: var(--primary);
}

.vimeo-overlay .hero-content {
    text-align: center;
    position: absolute;
    width: 100%;
    z-index: 2;
}

#primaryVideo {
    animation: fadeIn 1s both;
    animation-delay: 1s;
    opacity: 0;
}

.fadeIn {
    animation: fadeIn 0.5s both !important;
}

.fadeOut {
    animation: fadeOut 0.5s both !important;
}

@keyframes fadeIn {

    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

#vimeoThumb {
    animation: fadeOut 0.5s both;
    animation-delay: 1.5s;
    opacity: 1;
}

.vimeo-header #vimeoThumb {
    position: absolute;
}

#vimeoThumb img {
    width: 100%;
    z-index: 2;
}

.vimeo-overlay #vimeoThumb img {
    position: absolute;
}

@keyframes fadeOut {

    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

/** END VIMEO HEADER COMPONENTS **/

/** TWO COLUMN CARD COMPONENT **/

.cards {
    padding: 3rem 0 0;
}

.cards h2 {
    margin-bottom: 2rem;
}

.single-card {
    height: 100%;
    justify-content: space-between;
}

.single-card.image-top {
    justify-content: start;
}

.cards .first {
    order: 1;
}

.cards .second {
    order: 2;
}

.cards .goldenrod-border .single-card {
    border-top: 4px solid var(--secondary);
}

.cards .teal-border .single-card {
    border-top: 4px solid var(--accent1);
}

.cards .neon-border .single-card {
    border-top: 4px solid var(--accent5);
}

.cards .lightpurple-border .single-card {
    border-top: 4px solid var(--accent2);
}

.cards .peach-border .single-card {
    border-top: 4px solid var(--accent4);
}

.cards .darkpurple-border .single-card {
    border-top: 4px solid var(--dark);
}

.cards .card-text {
    padding: 0.8rem 0.8rem 0;
}

.single-card .two-card-body {
    color: var(--dark);
    font-weight: 400;
    padding-bottom: 2rem;
}

.single-card a.card-link {
    position: relative;
    text-decoration: none;
    display: block;
}

.single-card a:hover {
    text-decoration: none;
    transition: all 300ms ease-in-out;
}

.single-card .img-wrap .fountain-btn {
    position: absolute;
}

.single-card .fountain-btn:hover {
    background: var(--dark);
    color: white;
    text-decoration: none;
}

.single-card .fountain-btn {
    background: var(--accent1);
    color: #ffffff;
    padding: 0.8rem 2rem;
    text-align: center;
    position: relative;
    top: -1.4rem;
    left: 1rem;
    z-index: 3;
    font-weight: 700;
    transition: all 300ms ease-in-out;
}

.single-card .img-wrap {
    position: relative;
    margin-bottom: 5rem;
    background: var(--dark);
    transition: all 300ms ease-in-out;
}

.single-card .img-wrap.first {
    margin-bottom: 1rem;
    margin-top: 3rem;
}

.single-card .img-wrap img {
    width: 100%;
    height: auto;
    transform: scale(1.02);
    transition: all 700ms ease-in-out;
    z-index: 1;
    position: relative;
}

.single-card .img-wrap:hover {
    text-decoration: none;
    border-bottom-color: var(--primary) !important;
}

.single-card .img-wrap:hover img {
    transform: scale(1.15);
}

.single-card .img-wrap .img-overflow {
    overflow: hidden;
}

.single-card .img-overflow {
    position: relative;
}

.single-card .img-overflow .watch-video {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: -0.025rem;
    color: white;
    z-index: 4;
    text-align: center;
}

.single-card .img-overflow .watch-video::after {
    background: url("../images/play-button.png") center center no-repeat var(--secondary);
    background-size: 100% auto;
    border-radius: 50%;
    display: inline-block;
    content: "";
    height: 5.5rem;
    width: 5.5rem;
    margin-left: 1.4rem;
    position: relative;
    top: 2rem;
    margin-top: -2rem;
    transition: all 300ms ease-in-out;
}

/** END CARD COMPONENT **/

/** SPACER COMPONENT **/

.spacer {
    height: 1.5rem;
    clear: both;
}

.spacer.firefly-top,
.spacer.fountain-top,
.spacer.goldenrod-top,
.spacer.sunset-top,
.spacer.purple-top,
.spacer.spring-top {
    margin-top: 1.5rem;
}

/** END SPACER COMPONENT **/

/** QUICK FACTS COMPONENT **/

.quick-facts {
    padding-bottom: 50px;
}

.quick-facts .has-link {
    margin-bottom: 1.4rem;
}

.quick-facts h2,
.quick-facts h2.proxima {
    font-family: "proxima-nova";
    font-size: 3rem;
    font-weight: 400;
    line-height: 2.875rem;
    letter-spacing: -0.025rem;
}

.quick-facts .fact {
    color: white;
    padding: 2rem 2rem 4rem;
    /*    height: 350px;*/
    height: auto;
}

.quick-facts .fact .highlight {
    font-family: "proxima-nova";
    font-size: 4rem;
    font-weight: 700;
    letter-spacing: -0.025rem;
    line-height: 0.9;
}

.quick-facts .dark-purple .fact .highlight,
.quick-facts .dark-purple h2 em,
.quick-facts .dark-purple h3 em {
    color: var(--accent1);
}

.quick-facts .purple .fact .highlight,
.quick-facts .purple h2 em,
.quick-facts .purple h3 em {
    color: var(--secondary);
}

.quick-facts .teal .fact .highlight,
.quick-facts .teal h2 em,
.quick-facts .teal h3 em {
    color: var(--primary);
}

.quick-facts .fact img {
    height: 4.125rem;
    width: auto !important;
}

.quick-facts .fact .description img {
    height: auto;
    width: auto;
}

.quick-facts .fact .description {
    font-size: 1.17rem;
    font-weight: 700;
}

.quick-facts .fact .fact-link a {
    color: #ffffff;
    font-family: "proxima-nova";
    font-weight: 700;
    padding: 0.8rem 2rem;
    margin: 0;
    display: block;
    text-transform: none;
    transition: all 300ms ease-in-out;
    text-align: center;
    position: absolute;
    bottom: -1.4rem;
    right: 3rem;
    left: 3rem;
}

.quick-facts .fact .fact-link a:hover {
    background: var(--secondary);
    color: var(--dark);
    text-decoration: none;
}

.quick-facts .dark-purple {
    background: var(--dark);
}

.quick-facts .dark-purple .fact-link a {
    background: var(--accent1);
}

.quick-facts .teal {
    color: var(--primary);
    background: var(--accent1);
}

.quick-facts .teal .fact-link a {
    background: var(--primary);
}

.quick-facts .purple {
    color: var(--accent1);
    background: var(--primary);
}

.quick-facts .purple .fact-link a {
    background: var(--dark);
}

/** END QUICK FACTS COMPONENT **/

/** BLACKTHORN/FORMASSEMBLY/WEBFORM COMPONENT **/

.add-webform {
    display: none;
}

.form-component > .container {
    background: white;
    position: relative;
    z-index: 2;
    flex-grow: 1;
}

.form-component {
    padding: 2rem 0;
}

.form-component input {
    max-width: 100%;
}

.form-component .full {
    padding: 2rem 1rem;
    border-top: solid 0.25rem var(--secondary);
}

.form-component .left {
    border-top: solid 0.25rem var(--secondary);
    padding: 2rem 1rem;
}

.form-component .right {
    border-top: solid 0.25rem var(--accent1);
    padding: 2rem 1rem;
}

.webform-section-wrapper {
    padding-left: 1rem;
    border-left: 2px solid var(--accent5);
}

.webform-submission-form .fieldset-wrapper {
    padding-left: 1rem;
}

.webform-type-webform-name .fieldset-wrapper {
    padding-left: 0;
}

.wForm {
    padding: 0 !important;
}

.wForm .oneField {
    border: 0 none !important;
    max-width: 100% !important;
}

.wFormContainer {
    width: 100% !important;
    max-width: 100% !important;
}

.wForm select,
.wForm .inputContainer {
    width: 100% !important;
}

.wForm form select,
.wForm form textarea,
.wForm form input {
    background: var(--accent3b);
    background-color: var(--accent3b) !important;
    padding: 0.8rem 1rem !important;
    color: var(--primary) !important;
    font-family: "proxima-nova" !important;
    font-size: 1.17rem !important;
    font-weight: 400 !important;
    border: none;
}

.wForm form .primaryAction,
.wForm form input[type="submit"],
.webform-submission-form .primaryAction,
.webform-submission-form input[type="submit"] {
    border: none;
    background: url("../images/dark-purple-arrow.png") right 1rem center no-repeat var(--secondary);
    background-color: var(--secondary) !important;
    background-size: 1.2rem;
    padding: 0.8rem 3.4rem 0.8rem 2.4rem !important;
    color: var(--dark) !important;
    font-weight: 700 !important;
    border-radius: 1.8rem !important;
    text-align: center;
    cursor: pointer;
    transition: all 300ms ease-in-out;
}

.wForm form .primaryAction:hover,
.wForm form input[type="submit"]:hover,
.webform-submission-form .primaryAction:hover,
.webform-submission-form input[type="submit"]:hover {
    background: url("../images/white-arrow.png") right 1rem center no-repeat var(--dark);
    background-size: 1.2rem;
    color: white !important;
}

.wForm form label {
    font-family: "proxima-nova";
    color: var(--dark);
    vertical-align: middle;
}

.wForm fieldset legend {
    padding: 0 0 0.4rem !important;
    font-weight: bold !important;
    margin-bottom: 1rem !important;
    border-bottom: 1px solid;
    font-size: 1.5rem !important;
}

.wForm fieldset legend span {
    font-size: 1.5rem !important;
}

.wForm fieldset {
    border: 0 none !important;
    padding: 0 !important;
    margin: 0 0 4rem !important;
}

.wForm fieldset fieldset {
    margin: 4rem 0 !important;
}

.wForm .field-hint-inactive .hint {
    opacity: 1 !important;
    color: var(--primary);
}

.wForm .preField {
    display: inline-block;
}

.wForm .tt-search {
    top: 1rem !important;
    left: 0.5rem !important;
}

.wForm .tt-clear,
.wForm .tt-spinner {
    top: 1rem !important;
    right: 0.5rem !important;
}

.wForm .labelsLeftAligned .inline .preField {
    padding-top: 0 !important;
}

.wForm textarea,
.wForm input {
    width: auto !important;
}

.wForm textarea,
.wForm input,
.wForm select {
    border-radius: 0 !important;
}

.wForm form .oneChoice label,
.wForm form .oneChoice .label {
    white-space: normal !important;
    display: inline-block !important;
    vertical-align: top !important;
}

.wForm form input.wfAutosuggest {
    padding: 0.8rem 2rem !important;
}

@media only screen and (min-width: 576px) {

    .wForm form input.wfAutosuggest {
        min-width: 300px;
    }
}

@media only screen and (max-width: 575px) {

    .wForm .oneField {
        min-width: 100%;
    }

    .wForm .labelsAbove .inputWrapper {
        width: 100% !important;
    }

    .wForm .twitter-typeahead {
        width: 100%;
    }

    .two-column-callout.full-width-on .column-body {
        transform: translateY(0);
    }

    .two-column-callout.full-width-on .container {
        position: relative;
        top: 3rem;
    }

    .two-column-callout.full-width-on {
        overflow: hidden;
    }

    .two-column-callout.full-width-on .full-img-wrap {
        position: absolute;
    }
}

.wFormTitle {
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

/** END BLACKTHORN/FORMASSEMBLY/WEBFORM COMPONENT **/

/** DIRECTORY COMPONENT **/

.directory {
    padding: 3rem 1.7rem;
    background: var(--accent3);
}

.directory p a {
    text-decoration: none;
    font-size: 1.17rem;
}

.directory h3 {
    margin-bottom: 0.7rem;
    margin-top: 1rem;
    font-size: 1.7rem;
    line-height: 1.85rem;
}

.directory h4 {
    color: var(--dark);
    font-size: 1.17rem;
    font-weight: 400;
    margin-bottom: 1rem;
}

.directory .img-wrap {
    position: relative;
    overflow: hidden;
    border-bottom: 0.9375rem solid var(--accent2);
    transition: all 0.3s ease-in-out;
}

.directory .img-wrap img {
    transform: scale(1);
    transition: all 0.7s ease-in-out;
    width: 100%;
}

.directory .img-wrap:hover img {
    transform: scale(1.15);
}

.directory .img-wrap:hover {
    border-bottom-color: var(--primary) !important;
}

.directory .col-lg-3 {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/** END DIRECTORY COMPONENT **/

/** THREE COLUMN BILLBOARD COMPONENT **/

.three-billboard {
    padding: 3rem 0;
    position: relative;
}

.billboard-item {
    height: 100%;
    margin-bottom: 2rem;
}

.three-billboard .billboard-body {
    background: white;
    padding: 2rem;
    position: relative;
    z-index: 1;
    overflow: hidden;
    display: table;
    height: auto;
    width: 100%;
    color: var(--dark);
}

.three-billboard .billboard-body a {
    color: var(--primary);
}

.three-billboard .billboard-body a:hover {
    color: var(--accent4);
}

.three-billboard .billboard-body h2,
.three-billboard .billboard-body h3,
.three-billboard .billboard-body h4,
.three-billboard .billboard-body h5 {
    color: var(--dark);
}

.three-billboard .field--name-body p:last-of-type {
    margin-bottom: 0;
}

.three-billboard .field--name-body {
    padding-bottom: 2rem;
}

.three-billboard .col-lg-3:nth-of-type(n + 5),
.three-billboard .col-lg-4:nth-of-type(n + 4),
.three-billboard .col-lg-6:nth-of-type(n + 3) {
    margin-top: 30px;
}

.three-billboard .teal-border .billboard-item {
    border-top: 4px solid var(--accent1);
}

.three-billboard .sunset-border .billboard-item {
    border-top: 4px solid var(--accent4);
}

.three-billboard .firefly-border .billboard-item {
    border-top: 4px solid var(--accent5);
}

.three-billboard .spring-border .billboard-item {
    border-top: 4px solid var(--accent2);
}

.three-billboard .goldenrod-border .billboard-item {
    border-top: 4px solid var(--secondary);
}

.three-billboard .prexys-border .billboard-item {
    border-top: 4px solid var(--accent3a);
}

/** END THREE COLUMN BILLBOARD COMPONENT **/

/** NEWS & EVENTS BLOCK COMPONENTS **/

.events-related-block,
.events-block,
.news-block {
    padding: 1rem 0;
}

.events-related-block p a,
.events-block p a,
.news-block p a {
    text-decoration: none;
    position: relative;
    transition: all 300ms ease-in-out;
    text-transform: uppercase;
    margin-top: 55px;
    display: inline-block;
}

.events-related-block p a::before,
.events-block p a::before,
.news-block p a::before {
    content: "";
    left: 0;
    right: 0;
    bottom: -0.6rem;
    position: absolute;
    display: block;
    height: 0.25rem;
    background: var(--secondary);
}

.events-related-block article,
.events-block article,
.news-block article {
    height: auto;
    margin-bottom: 2rem;
}

.news-block .teal-border article {
    border-top: 0.25rem solid var(--accent1);
    border-bottom: 0.9375rem solid var(--accent1);
}

.events-related-block .teal-border article,
.events-block .teal-border article {
    border-top: 0.25rem solid var(--accent1);
}

.news-block .neon-border article {
    border-top: 0.25rem solid var(--accent5);
    border-bottom: 0.9375rem solid var(--accent5);
}

.events-related-block .neon-border article,
.events-block .neon-border article {
    border-top: 0.25rem solid var(--accent5);
}

.news-block .goldenrod-border article {
    border-top: 0.25rem solid var(--secondary);
    border-bottom: 0.9375rem solid var(--secondary);
}

.events-related-block .goldenrod-border article,
.events-block .goldenrod-border article {
    border-top: 0.25rem solid var(--secondary);
}

.news-block .news-teaser {
    text-decoration: none;
    transition: all 300ms ease-in-out;
    min-width: 100%;
    display: block;
    flex-direction: column;
    justify-content: space-between;
}

.events-related-block .event-link h2,
.events-block .event-link h2,
.news-block .news-teaser h2,
.path-taxonomy .event-link h2 {
    font-size: 1.75rem;
    line-height: 2rem;
    margin-bottom: 1rem;
}

.events-related-block .event-link h2.proxima a,
.events-block .event-link h2.proxima a,
.news-block .news-teaser h2.proxima a {
    color: var(--dark);
}

.events-related-block .event-link .img-wrap,
.events-block .event-link .img-wrap,
.news-block .news-teaser .img-wrap {
    position: relative;
    overflow: hidden;
    transition: all 300ms ease-in-out;
}

.events-related-block .event-link .img-wrap img,
.events-block .event-link .img-wrap img,
.news-block .news-teaser .img-wrap img {
    width: 100%;
    height: auto;
    transform: scale(1);
    transition: all 700ms ease-in-out;
    margin-bottom: -1px;
}

.events-related-block .event-link .event-date,
.events-block .event-link .event-date,
.news-block .news-teaser .created {
    color: rgba(0, 0, 0, 0.55);
    font-family: "proxima-nova";
    font-size: 1.25rem;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    display: block;
}

.events-block .event-link .event-date h2,
.events-related-block .event-link .event-date h2 {
    text-transform: none;
}

.news-teaser .date-title {
    padding: 0.8rem 0.8rem 0;
    transition: all 300ms ease-in-out;
}

.events-related-block .date-title,
.events-block .date-title {
    padding: 1rem 0 0;
    transition: all 300ms ease-in-out;
}

.news-block .news-teaser:hover,
.events-block .event-link:hover,
.events-related-block .event-link:hover,
.path-taxonomy .event-link:hover {
    text-decoration: none;
}

.events-related-block a.event-link:hover h2,
.events-block a.event-link:hover h2,
.news-block a.news-teaser:hover h2,
.path-taxonomy a.event-link:hover h2 {
    color: var(--primary);
}

.events-related-block .event-link:hover,
.events-block .event-link:hover,
.news-block .news-teaser:hover {
    border-top-color: var(--primary) !important;
}

.events-related-block .event-link:hover .img-wrap,
.events-block .event-link:hover .img-wrap,
.news-block .news-teaser:hover .img-wrap {
    border-bottom-color: var(--primary) !important;
}

.events-related-block .event-link:hover .img-wrap img,
.events-block .event-link:hover .img-wrap img,
.news-block .news-teaser:hover .img-wrap img {
    transform: scale(1.15);
}

/** END NEWS BLOCK COMPONENT **/

/** PROFILE, DIRECTORY & EVENT NODES **/

.page-node-type-profile .node__content,
.page-node-type-event .node__content,
.page-node-type-directory .node__content {
    padding-top: 4rem;
    padding-bottom: 2rem;
}

.page-node-type-profile .node__content h2 {
    font-size: 2.3rem;
}

.page-node-type-profile .node__content h2,
.page-node-type-event .node__content h3,
.page-node-type-directory .node__content h3 {
    margin-bottom: 2rem;
}

.page-node-type-event h1.h2,
.page-node-type-profile .node__content h1.h2 {
    font-size: 2.25rem;
}

.page-node-type-profile .node__content img,
.page-node-type-event .node__content img,
.page-node-type-directory .node__content img {
    width: auto;
    height: auto;
    margin-bottom: 1.4rem;
}

.page-node-type-profile .node__content ul,
.page-node-type-event .node__content ul,
.page-node-type-directory .node__content ul {
    margin: 0;
    padding: 1rem 1.4rem;
}

.page-node-type-profile .node__content a,
.page-node-type-event .node__content a,
.page-node-type-directory .node__content a {
    color: var(--dark);
    transition: all 300ms ease-in-out;
}

.page-node-type-profile .node__content a:hover,
.page-node-type-event .node__content a:hover,
.page-node-type-directory .node__content a:hover {
    color: var(--primary);
}

.page-node-type-profile .details,
.page-node-type-event .details,
.page-node-type-directory .details {
    font-family: "proxima-nova";
    line-height: 1.5;
    margin-bottom: 2rem;
}

.page-node-type-profile .details a,
.page-node-type-event .details a,
.page-node-type-directory .details a {
    color: var(--primary);
    text-decoration: underline;
    transition: all 300ms ease-in-out;
}

.page-node-type-profile .details a:hover,
.page-node-type-event .details a:hover,
.page-node-type-directory .details a:hover {
    color: var(--dark);
}

.page-node-type-profile .details .field,
.page-node-type-event .details .field,
.page-node-type-directory .details .field {
    margin-bottom: 0.8rem;
}

.page-node-type-event .details .label {
    display: block;
}

.page-node-type-directory .details .field--name-field-location p {
    margin-bottom: 0;
}

.page-node-type-profile .details .label,
.page-node-type-event .details .label,
.page-node-type-directory .details .field__label,
.page-node-type-directory .node__content .position,
.page-node-type-directory .node__content .secondary-position {
    font-weight: 800;
    color: var(--primary);
    font-size: 1.4rem;
}

.page-node-type-directory .node__content .social-links {
    margin-top: 2rem;
    padding-left: 0;
    margin-left: 0;
}

.page-node-type-directory .node__content .social-links a {
    background: var(--accent1);
    color: white;
}

.page-node-type-directory .node__content .social-links a::before {
    display: none;
}

.page-node-type-directory .node__content .social-links a:hover {
    color: var(--dark);
    background: var(--secondary);
}

.page-node-type-directory a.website-link {
    text-decoration: none;
}

.page-node-type-directory .fa-external-link-square-alt {
    vertical-align: top;
}

.page-node-type-directory .h3.form-title {
    display: none;
}

.page-node-type-directory a.btn-primary:focus {
    background: var(--primary);
}

.page-node-type-profile .img-wrap,
.page-node-type-directory .img-wrap {
    position: relative;
    margin-bottom: 4rem;
}

.page-node-type-profile .img-wrap::before,
.page-node-type-directory .img-wrap::before {
    content: "";
    position: absolute;
    display: block;
    background: url("../images/menu-bg-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 350px;
    height: 187px;
    z-index: -1;
    bottom: -3rem;
    right: unset;
    left: 7rem;
}

/** END DIRECTORY & EVENTS NODE **/

/** DEPARTMENT ANNOUNCEMENT NODE/COMPONENT **/

.node--type-department-announcement .created,
.announcements .created {
    color: rgba(0, 0, 0, 0.55);
    font-family: "proxima-nova";
    font-size: 1.25rem;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    display: block;
}

.node--type-department-announcement h1 {
    font-size: 2.8rem !important;
}

.announcements .container {
    border-top: solid 0.25rem var(--secondary);
    padding: 3rem;
    background-color: #fff;
}

.announcements hr {
    border-top: 1px solid var(--gray3);
    margin: 1.5rem 0;
}

.announcements .view-content h2 {
    font-size: 2rem;
    line-height: 2rem;
    margin-bottom: 0;
}

.announcements .view-content h2.proxima a {
    color: var(--primary);
}

.announcements .view-content h2.proxima a:hover {
    color: var(--accent4);
}

/** END DEPARTMENT ANNOUNCEMENT NODE/COMPONENT **/

/** SITE SEARCH COMPONENT **/

.site-search {
    padding: 6rem 1.2rem;
}

.site-search > .container {
    border-top: solid 0.25rem var(--secondary);
    padding: 3rem;
    background-color: #fff;
}

.site-search input[type="search"] {
    width: 100%;
    padding: 0.8rem 1rem !important;
    box-sizing: border-box;
}

.site-search input[type="submit"] {
    background: var(--accent1);
    border-radius: 0;
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
}

.site-search .search-block-form .container {
    display: flex;
    padding: 0;
}

.site-search .form-actions {
    margin: 0;
}

.site-search .form-type-search {
    width: 100%;
    position: relative;
    margin: 0;
}

.site-search .form-type-search::after {
    content: "\f002";
    font-family: "Font Awesome 6 Free";
    position: absolute;
    right: 1.4rem;
    font-size: 1.4rem;
    color: var(--secondary);
    top: 50%;
    transform: translateY(-50%);
    font-weight: 900;
}

#search-form input[type="submit"] {
    background: var(--accent1);
    border-radius: 0;
    color: #fff;
    font-weight: 600;
    margin: 0;
}

form[id^="search-block-form"] .form-submit:hover,
#search-form .form-submit:hover {
    background: var(--secondary);
    color: var(--dark);
}

/** END SITE SEARCH COMPONENT **/

/** PROFILE COMPONENT **/

.profile-component {
    background: #fff;
    position: relative;
    z-index: 1;
}

.profile-component .container {
    position: relative;
    padding-top: 65px;
    padding-bottom: 65px;
}

.profile-component .profile-link a {
    text-transform: uppercase;
    position: relative;
    padding: 0.7rem 2rem 0 0;
    margin-bottom: 0.5rem;
    display: inline-block;
    border-bottom: 2px solid var(--accent1);
}

.profile-component .profile-link a::after {
    content: "→";
    right: 0;
    bottom: 0;
    position: absolute;
    display: block;
    font-weight: 900;
}

.profile-component img {
    border-radius: 50%;
    padding-top: 15px;
    padding-bottom: 15px;
}

.profile-component .profiles-title {
    align-self: center;
    margin-bottom: 25px;
}

.profile-component .paragraph {
    margin-bottom: 40px;
}

.profile-component .profile-info {
    flex-direction: column;
    align-self: center;
}

.profile-component .profile-title {
    font-weight: 700;
    font-size: 1.4rem;
    display: block;
}

.profile-component .col-lg-7 {
    background-color: var(--accent3b);
}

.profile-component p:last-of-type {
    margin-bottom: 0.5rem;
}

/** END PROFILE COMPONENT **/

/** TABBED BLOCK COMPONENT **/

.tab-component {
    background-size: 431px auto;
    position: relative;
    padding: 3rem 0;
    background-color: var(--primary);
    margin-bottom: 2rem;
}

.tab-component .container {
    position: relative;
    z-index: 1;
}

.tab-component h2 {
    margin-bottom: 2rem;
}

.tab-component::after {
    content: "";
    display: block;
    inset: 0 73.5% 1px -100%;
    position: absolute;
    background: linear-gradient(180deg, #2f044d, #46066b);
    background-blend-mode: multiply;
    transform: skew(-22deg);
    z-index: 0;
    pointer-events: none;
}

.tab-component .pane .tab-body {
    font-family: "proxima-nova";
    font-weight: 400;
}

.tab-component .pane .tab-link a {
    font-weight: 700;
    color: #ffffff;
    background: var(--accent1);
    padding: 0.8rem 2rem;
    display: inline-block;
    margin-top: 1rem;
    margin-bottom: 2rem;
    transition: all 300ms ease-in-out;
}

.tab-component .pane .tab-link a:hover {
    background: var(--primary);
    color: white;
    text-decoration: none;
}

.tab-component .pane {
    background: white;
    color: var(--dark);
    position: relative;
    z-index: 2;
}

.tab-component .pane .inner {
    padding: 2rem;
    overflow: hidden;
}

.tab-component .pane img {
    width: 100%;
    height: auto;
    border-bottom: 1rem solid;
}

.tab-component .card-header {
    background: transparent;
    border: none;
    padding: 0;
    margin: 0;
}

.tab-component .card-header a {
    border-top: 3.6px solid;
    border-color: var(--accent4);
    color: var(--accent4);
    font-family: "proxima-nova";
    font-size: 1.7rem;
    font-weight: 800;
    display: block;
    padding: 0.8rem 0.4rem;
    padding-right: 40px;
    position: relative;
    text-decoration: none;
}

.tab-component .card-header a.teal-border {
    color: var(--accent1);
    border-color: var(--accent1);
}

.tab-component .card-header a.goldenrod-border {
    color: var(--secondary);
    border-color: var(--secondary);
}

.tab-component .card-header a::after {
    content: "—";
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.4rem;
    font-weight: 800;
}

.tab-component .card-header a.collapsed::after {
    content: "+";
    font-size: 2rem;
}

.tab-component .card-header a:hover {
    text-decoration: none;
}

.tab-component .card-header a.teal {
    color: var(--accent1);
    border-color: var(--accent1);
}

.tab-component .card-header a.yellow {
    color: var(--secondary);
    border-color: var(--secondary);
}

.tab-component .pane.coral-border img {
    border-color: var(--accent4);
}

.tab-component .pane.teal-border img {
    border-color: var(--accent1);
}

.tab-component .pane.goldenrod-border img {
    border-color: var(--secondary);
}

.tab-component .coral-border .tab-subtitle strong {
    color: var(--accent4);
}

.tab-component .teal-border .tab-subtitle strong {
    color: var(--accent1);
}

.tab-component .goldenrod-border .tab-subtitle strong {
    color: var(--secondary);
}

/** END TABBED BLOCK COMPONENT **/

/** HERO SLIDER COMPONENT **/

.hero-wrap {
    overflow: hidden;
}

.hero-block img {
    max-width: none;
}

.hero-block {
    overflow: hidden;
    position: relative;
    color: #ffffff;
    font-weight: 400;
    background: url("../images/hero-bg-min.jpg") center center no-repeat var(--dark);
    background-size: cover;
}

.hero-block::before {
    content: "";
    display: block;
    inset: -1rem 89.5% 60px -100%;
    position: absolute;
    background: linear-gradient(180deg, #2f044d, #46066b);
    background-blend-mode: multiply;
    transform: skew(-25deg);
    z-index: 1;
    pointer-events: none;
    opacity: 0.6;
}

.hero-block::after {
    content: "";
    display: block;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--accent3);
    height: 60px;
    position: absolute;
    z-index: 0;
}

.hero-block h2 {
    color: white;
    line-height: 1.05;
}

.hero-block h2 em {
    color: var(--secondary);
    font-style: normal;
}

.hero-block .hero-slide {
    position: relative;
    height: 400px;
}

.hero-block .hero-slide .container {
    position: relative;
    height: 100%;
}

.hero-block .column-body {
    margin-top: 310px;
    z-index: 5;
    margin-bottom: 80px;
}

.hero-block .column-body::before {
    content: "";
    display: block;
    top: 90%;
    left: -2rem;
    pointer-events: none;
    position: absolute;
    background: url("../images/hero-accent-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 182px;
    height: 281px;
    z-index: -1;
}

.hero-block .column-body .body-text {
    max-width: 525px;
}

.hero-block .slide-links {
    padding-top: 1rem;
}

.hero-block .slide-links a {
    font-family: "proxima-nova";
    font-size: 1.17rem;
    font-weight: 700;
    padding: 0.8rem 2rem;
    margin: 0;
    text-transform: none;
    transition: all 300ms ease-in-out;
    margin-bottom: 1rem;
    display: block;
    text-align: center;
    background: white;
    color: var(--primary);
}

.hero-block .slide-links a:hover {
    text-decoration: none;
    color: var(--dark);
    background: var(--secondary);
}

.hero-block .slide-links a:nth-child(2) {
    background: var(--accent1);
    color: #ffffff;
}

.hero-block .slide-links a:nth-child(2):hover {
    color: var(--dark);
    background: var(--secondary);
    border-color: var(--secondary);
}

.hero-block .slivers {
    position: relative;
}

.hero-block .slivers::before {
    content: "";
    background: url("../images/hero-sliver-min.png") center center no-repeat;
    background-size: 100% auto;
    z-index: 2;
    width: 179px;
    height: 195px;
    display: block;
    position: absolute;
    right: 1rem;
    top: 1rem;
    margin-top: 5%;
}

.hero-block .img-wrap {
    transform: skew(-25deg);
    overflow: hidden;
    position: absolute;
    text-align: left;
    width: 200px;
    height: 460px;
    z-index: 0;
    opacity: 0;
    right: -25%;
    transition: all 600ms ease-in-out;
}

.hero-block .img-wrap .correct {
    transform: skew(25deg);
}

.hero-block .img-wrap .correct img {
    float: right;
    filter: blur(3px);
    -webkit-filter: blur(3px);
}

.hero-block .img-wrap[data-position="1"] {
    right: 9rem;
    z-index: 1;
    height: 280px;
    opacity: 1;
    width: 244px;
}

.hero-block .img-wrap[data-position="1"] img {
    height: 280px;
    filter: blur(0);
    -webkit-filter: blur(0);
}

.hero-block .img-wrap[data-position="2"] {
    right: -2rem;
    width: 120px;
    height: 190px;
    z-index: 2;
    opacity: 1;
}

.hero-block .img-wrap[data-position="2"] img {
    height: 190px;
}

.hero-block .carousel-nav {
    overflow: hidden;
    position: absolute;
    top: 0;
    margin-top: -6rem;
    z-index: 99;
    right: 2rem;
}

.hero-block .carousel-nav .sr-only {
    color: black;
    background: white;
}

.hero-block .carousel-nav a {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: block;
    margin-left: 1rem;
    transition: all 300ms ease-in-out;
    position: relative;
    z-index: 999;
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    border: 0.1875rem solid transparent;
    background-size: 25px auto;
}

.hero-block .carousel-nav a:hover {
    background: url("../images/white-arrow.png") center center no-repeat var(--primary);
    background-size: 25px auto;
    border: 0.1875rem solid var(--dark);
}

.hero-block .carousel-nav a.prev {
    transform: rotate(180deg);
    margin-left: 0;
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 25px auto;
    border: 0.1875rem solid var(--secondary);
}

.hero-block .carousel-nav a.prev:hover {
    background: url("../images/white-arrow.png") center center no-repeat var(--dark);
    background-size: 25px auto;
    border: 0.1875rem solid var(--dark);
}

/** END HERO SLIDER COMPONENT **/

/** UPLOADED HEADER VIDEO COMPONENT **/

.video-header .video,
.video-header .video-js {
    width: 100%;
    font-size: 1.125rem;
    position: relative;
    background: transparent;
    min-height: 180px;
}

.video-header .video video {
    object-fit: cover;
}

.video-header .video {
    display: flex;
    flex-direction: column;
    justify-content: center;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    min-height: 180px;
    max-height: none;
}

.video-header .subtitles-off .video-js .vjs-control-bar {
    background-color: var(--dark);
    width: auto;
    left: auto;
    right: 0;
    bottom: 0;
    border-radius: 0;
    opacity: 1 !important;
    display: block !important;
}

.video-header .vjs-poster {
    background-size: cover;
}

.video-header h2 {
    margin-top: 20px;
    color: #ffffff;
    font-size: 3.8rem;
    text-shadow:
        0 2px 4px rgb(0, 0, 0, 0.5),
        0 2px 6px rgb(0, 0, 0, 0.3);
}

.video-header .fountain-btn a {
    display: block;
    background: var(--primary);
}

.video-header .fountain-btn a:hover {
    background: var(--secondary);
    color: var(--primary);
}

.video-header .video-js .vjs-big-play-button,
.video-header .subtitles-off .video-js .vjs-progress-control,
.video-header .subtitles-off .video-js .vjs-time-control,
.video-header .video-js .vjs-picture-in-picture-control,
.video-header .video-js .vjs-fullscreen-control,
.video-header .subtitles-off .video-js .vjs-big-play-button,
.video-header .subtitles-off .video-js .vjs-volume-panel,
.video-header .subtitles-off .video-js .vjs-subs-caps-button {
    display: none;
}

.video-header .subtitles-on .video-js .vjs-subs-caps-button.vjs-menu-button-popup .vjs-menu {
    right: 0 !important;
    left: unset !important;
}

.video-header .hero-content {
    text-align: center;
    position: absolute;
    width: 100%;
    -webkit-animation: fadein 1s;
    animation: fadein 1s;
}

@keyframes fadein {

    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.video-header .vjs-poster img {
    object-fit: cover !important;
}

@media only screen and (max-width: 575px) {

    .video-header .hero-content {
        position: relative;
    }

    .video-header .video {
        min-height: auto;
        aspect-ratio: unset;
        background-image: none !important;
        background-color: var(--primary);
    }
}

/** END UPLOADED HEADER VIDEO COMPONENT **/

/** YOUTUBE HEADER VIDEO BLOCK TYPE **/

.header-video {
    text-align: center;
}

.header-video img {
    width: 100%;
    margin: 0 auto;
}

.header-video .vid {
    background: url("../images/play-button.png") center center no-repeat var(--secondary);
    background-size: 100% auto;
    border-radius: 50%;
    content: "";
    display: inline-block;
    transition: all 300ms ease-in-out;
    height: 3.5rem;
    width: 3.5rem;
    position: absolute;
}

.header-video a.header-vid-link {
    display: flex;
    flex-direction: column;
    position: relative;
    align-items: center;
    justify-content: center;
}

/** END YOUTUBE HEADER VIDEO BLOCK TYPE **/

/** PHOTO GALLERY COMPONENT **/

.photo-gallery {
    margin: 3rem 0;
}

.photo-body {
    margin-bottom: 2rem;
}

.gallery-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.gallery-image {
    flex: 220px 1 1;
    text-align: center;
}

.gallery-image img {
    height: 220px;
    object-fit: cover;
}

.pswp__bg,
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
    background: var(--dark);
}

.pswp__dynamic-caption {
    min-height: 55px;
}

.pswp__counter {
    display: none;
}

img.pswp__img {
    background: var(--dark);
    margin-top: 20px;
}

.pswp__dynamic-caption--below {
    font-size: 1.125rem;
    padding: 40px 0 20px;
    text-align: center;
    max-width: none;
}

.pswp__button--arrow {
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 23px auto;
    border: 0.1875rem solid var(--secondary);
    border-radius: 50%;
    content: "";
    display: block;
    height: 40px;
    transition: all 300ms ease-in-out !important;
    width: 40px;
}

.pswp__button--arrow--prev:hover,
.pswp__button--arrow--next:hover {
    background-color: transparent;
    background-image: url("../images/white-arrow.png") !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 25px auto;
    border: 0.1875rem solid var(--dark);
    border-radius: 50%;
    transition: all 300ms ease-in-out !important;
}

.pswp__button--arrow--prev {
    background-image: url("../images/yellow-arrow.png") !important;
    left: 25px;
    transform: rotate(180deg);
}

.pswp__button--arrow--next {
    background-color: var(--secondary);
    background-image: url("../images/dark-purple-arrow.png") !important;
    right: 25px;
}

.pswp__button--arrow .pswp__icn {
    display: none;
}

/** END PHOTO GALLERY COMPONENT  **/

/** IMAGES AND BUTTON OVERLAY COMPONENT  **/

.images-button-overlay .container {
    padding: 3rem 15px;
}

.images-button-overlay .image-wrapper img {
    padding-bottom: 30px;
    min-width: 100%;
}

.images-button-overlay .image-wrapper .col-lg-3 img {
    height: 100% !important;
}

.images-button-overlay .field--name-body {
    padding-bottom: 1rem;
}

.images-button-overlay .fountain-btn {
    position: absolute;
    bottom: 30px;
    text-align: center;
    width: 100%;
    margin-left: -15px;
    margin-bottom: 10px;
    padding-right: 45px;
    padding-left: 45px;
}

/** END IMAGES AND BUTTON OVERLAY COMPONENT  **/

/** COLOR BOX STYLES **/

/**
 * Colorbox Core Style:
 * The following CSS is consistent between example themes and should not be altered.
 **/

#colorbox,
#cboxOverlay,
#cboxWrapper {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    overflow: hidden;
}

#cboxOverlay {
    position: fixed;
    width: 100%;
    height: 100%;
}

#cboxMiddleLeft,
#cboxBottomLeft {
    clear: left;
}

#cboxContent {
    position: relative;
}

#cboxLoadedContent {
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

#cboxTitle {
    margin: 0;
}

#cboxLoadingOverlay,
#cboxLoadingGraphic {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/**
 * These elements are buttons, and may need to have additional
 * styles reset to avoid unwanted base styles.
 **/

#cboxPrevious,
#cboxNext,
#cboxClose,
#cboxSlideshow {
    border: 0;
    padding: 0;
    margin: 0;
    overflow: visible;
    width: auto;
    background: none;
    cursor: pointer;
}

/**
 * Avoid outlines on :active (mouseclick),
 * but preserve outlines on :focus (tabbed navigating)
 **/

#cboxPrevious:active,
#cboxNext:active,
#cboxClose:active,
#cboxSlideshow:active {
    outline: 0;
}

.cboxPhoto {
    float: left;
    margin: auto;
    border: 0;
    display: block;
    max-width: none;
}

.cboxIframe {
    width: 100%;
    height: 100%;
    display: block;
    border: 0;
}

/** Reset box sizing to content-box if theme is using border-box. **/

#colorbox,
#cboxContent,
#cboxLoadedContent {
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

/**
 * Colorbox module plain style:
 * The styles are ordered & tabbed in a way that represents
 * the nesting of the generated HTML.
 **/
/* stylelint-disable-next-line no-duplicate-selectors */
#cboxOverlay {
    background: #000;
}

#colorbox {
    outline: 0;
}

/** @codingStandardsIgnoreLine **/
/* stylelint-disable-next-line no-duplicate-selectors */
#cboxContent {
    overflow: hidden;
}

#cboxContent,
.cboxPhoto {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

#cboxError {
    padding: 50px;
    border: 1px solid var(--gray3);
}
/* stylelint-disable-next-line no-duplicate-selectors */
#cboxTitle {
    position: absolute;
    background: rgba(255, 255, 255, 0.7);
    bottom: 0;
    left: 0;
    color: #535353;
    width: 100%;
    padding: 4px 6px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-bottom-right-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -moz-border-radius-bottomleft: 5px;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
}

#cboxLoadingOverlay {
    background: #fff;
}

#cboxLoadingGraphic {
    background: url("images/loading_animation.gif") no-repeat center center;
}

#cboxClose.cbox-close-plain {
    position: absolute;
    font-size: 20px;
    line-height: 18px;
    text-align: center;
    color: rgba(255, 255, 255, 0.7);
    background: rgba(0, 0, 0, 0.5);
    top: 4px;
    right: 4px;
    width: 20px;
    height: 20px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

.cbox-close-plain:hover {
    color: rgba(255, 255, 255, 0.9);
    background: rgba(0, 0, 0, 0.8);
}

/** END COLOR BOX STYLES **/

/** GOOGLE RESULTS PAGE **/

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-input {
    padding: 0;
    background: var(--accent3b) !important;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results table.gsc-search-box {
    table-layout: auto;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results table.gsc-search-box td,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsst_b,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsst_a {
    padding: 0;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-control-cse,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-result-info,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-control-cse .gs-spelling,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-control-cse .gs-result .gs-title,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-control-cse .gs-result .gs-title *,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-input,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-selected-option-container,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-control-cse .gsc-table-result {
    font-family: "proxima-nova";
    font-size: 1.125rem !important;
    line-height: 1.375rem !important;
    color: var(--primary);
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gs-web-image-box,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gs-promotion-image-box {
    width: 110px;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gs-web-image-box .gs-image,
#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gs-promotion-image-box .gs-promotion-image {
    max-width: 100px;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results tr {
    border: 0 none;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results tr:hover {
    background: transparent;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results table td.gsib_a {
    padding: 5px 20px 4px;
    background: var(--accent3b) !important;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsst_a .gscb_a {
    color: var(--secondary);
    position: absolute;
    left: -30px;
    top: 0;
    font-size: 2.8rem;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-search-button {
    padding: 0;
    margin: 0;
    border-radius: 0;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-search-button-v2 {
    font-size: 1rem;
    background: var(--accent1);
    padding: 1.1rem 1rem;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-search-button-v2::before {
    content: "Search";
    font-weight: 600;
}

#block-uni-bootstrap-4-search-uni-bootstrap-4-search-results .gsc-search-button-v2 svg {
    display: none;
}

/*Google CSE Results Page*/

div#___gcse_0 .gsc-input {
    padding: 0;
    background: var(--accent3b) !important;
}

div#___gcse_0 table.gsc-search-box {
    table-layout: auto;
}

div#___gcse_0 table.gsc-search-box td,
div#___gcse_0 .gsst_b,
div#___gcse_0 .gsst_a {
    padding: 0;
}

div#___gcse_0 .gsc-control-cse,
div#___gcse_0 .gsc-result-info,
div#___gcse_0 .gsc-control-cse .gs-spelling,
div#___gcse_0 .gsc-control-cse .gs-result .gs-title,
div#___gcse_0 .gsc-control-cse .gs-result .gs-title *,
div#___gcse_0 .gsc-input,
div#___gcse_0 .gsc-selected-option-container,
div#___gcse_0 .gsc-control-cse .gsc-table-result {
    font-family: "proxima-nova";
    font-size: 1.17rem !important;
    line-height: 1.755rem !important;
    color: var(--primary);
}

div#___gcse_0 .gs-web-image-box,
div#___gcse_0 .gs-promotion-image-box {
    width: 110px;
}

div#___gcse_0 .gs-web-image-box .gs-image,
div#___gcse_0 .gs-promotion-image-box .gs-promotion-image {
    max-width: 100px;
}

div#___gcse_0 tr {
    border: 0 none;
}

div#___gcse_0 tr:hover {
    background: transparent;
}

div#___gcse_0 table td.gsib_a {
    padding: 5px 20px 4px;
    background: var(--accent3b) !important;
}

div#___gcse_0 .gsst_a .gscb_a {
    color: var(--secondary);
    position: absolute;
    left: -30px;
    top: 0;
    font-size: 2.8rem;
}

div#___gcse_0 .gsc-search-button {
    padding: 0;
    margin: 0;
    border-radius: 0;
}

div#___gcse_0 .gsc-search-button-v2 {
    font-size: 1rem;
    background: var(--accent1);
    padding: 1.1rem 1rem;
}

div#___gcse_0 .gsc-search-button-v2::before {
    content: "Search";
    font-weight: 600;
}

div#___gcse_0 .gsc-search-button-v2 svg {
    display: none;
}

.gs-webResult.gs-result a.gs-title:link,
.gs-webResult.gs-result a.gs-title:link b,
.gs-imageResult a.gs-title:link,
.gs-imageResult a.gs-title:link b {
    color: var(--primary) !important;
}

.gs-webResult.gs-result a.gs-title:hover,
.gs-webResult.gs-result a.gs-title:hover b,
.gs-imageResult a.gs-title:hover,
.gs-imageResult a.gs-title:hover b {
    color: var(--accent4) !important;
}

.gs-webResult div.gs-visibleUrl {
    color: var(--accent1) !important;
}

.gs-webResult:not(.gs-no-results-result):not(.gs-error-result) .gs-snippet,
.gs-fileFormatType {
    color: var(--dark) !important;
}

.gs-webResult div.gs-visibleUrl-breadcrumb {
    display: block;
}

.gsc-control-cse {
    padding: 1rem 0 !important;
}

.gcsc-find-more-on-google-magnifier {
    fill: var(--primary) !important;
}

.gcsc-find-more-on-google {
    color: var(--primary) !important;
}

.gsc-results .gsc-cursor-box .gsc-cursor-page {
    border-color: var(--dark) !important;
    background-color: #ffffff !important;
    color: var(--dark) !important;
}

.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
    border-color: var(--primary) !important;
    background-color: #ffffff !important;
    color: var(--primary) !important;
}

/** END GOOGLE RESULTS PAGE **/

/** MAJORS SEARCH COMPONENT **/

.major-search-wrap form[id^="search-block-form"] input {
    width: 100%;
}

.major-search-wrap form[id^="search-block-form"] .form-item-search-block-form {
    margin: 0;
}

.major-search-wrap form[id^="search-block-form"] .fa-magnifying-glass {
    position: absolute;
    right: 1.4rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.4rem;
    color: var(--primary);
}

#majorsMenu {
    list-style: none;
    max-height: 500px;
    overflow: auto;
    border-bottom: 1px solid var(--gray3);
    border-left: 1px solid var(--gray3);
    border-right: 1px solid var(--gray3);
}

#majorsMenu a:last-of-type::after {
    content: "";
}

#majorsMenu a::after {
    content: ",";
}

.major-search {
    z-index: 1000;
}

.major-search li {
    border-bottom: 1px solid var(--gray3);
}

.major-search li:last-child {
    border-bottom: 0 none;
}

/** END MAJORS SEARCH COMPONENT **/

/** FOUR SQUARES CAROUSEL COMPONENT **/

.four-squares {
    padding: 50px 0;
}

.four-squares .four-caption {
    padding-bottom: 50px;
}

.four-squares .four-caption p:last-of-type {
    margin-bottom: 0;
}

.four-squares .owl {
    padding-bottom: 0;
}

.four-squares .owl-theme .owl-nav {
    position: relative;
}

.four-squares .owl-nav .owl-prev span {
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 20px auto;
}

.four-squares .owl-theme .owl-nav [class*="owl-"]:hover {
    background: none;
}

.four-squares .owl-nav span:hover {
    background: url("../images/yellow-arrow.png") center center no-repeat var(--dark);
    background-size: 20px auto;
    transition: all 300ms ease-in-out;
}

.four-squares .owl-nav .owl-prev,
.four-squares .owl-nav .owl-next {
    position: relative;
}

/** END FOUR SQUARE CAROUSEL COMPONENT **/

/** THREE CARDS CAROUSEL COMPONENT **/

.three-cards {
    padding-bottom: 75px;
}

.three-cards .field--name-field-card-button {
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    right: 2rem;
}

.three-cards .field--name-field-card-button a {
    display: block;
    background: var(--accent1);
    color: #fff;
    padding: 0.8rem 2rem;
    transition: all 300ms ease-in-out;
}

.three-cards .field--name-field-card-button a:hover {
    background: var(--dark);
    text-decoration: none;
    transition: all 300ms ease-in-out;
}

.three-cards .paragraph {
    text-align: center;
}

.three-card-caption {
    padding-top: 75px;
    padding-bottom: 50px;
}

.three-card-caption p:last-of-type {
    margin-bottom: 0;
}

.three-cards .owl-carousel.owl-loaded {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.three-cards .owl {
    padding-bottom: 0;
}

.three-cards .owl-theme .owl-nav {
    position: relative;
    left: auto;
    right: auto;
}

.three-cards .owl-nav .owl-prev span {
    background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
    background-size: 20px auto;
}

.three-cards .owl-theme .owl-nav [class*="owl-"]:hover {
    background: none;
}

.three-cards .owl-nav span:hover {
    background: url("../images/yellow-arrow.png") center center no-repeat var(--dark);
    background-size: 20px auto;
    transition: all 300ms ease-in-out;
}

.three-cards .owl-nav .owl-prev,
.three-cards .owl-nav .owl-next {
    position: relative;
}

/** END three CARDS CAROUSEL COMPONENT **/

/** TWO COLUMN IMAGE BOXES COMPONENT **/

.image-boxes > .container {
    padding: 6rem 1.2rem;
}

.image-boxes.right .col-7 .img-wrap::before {
    content: "";
    position: absolute;
    display: block;
    background: url("../images/menu-bg-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 350px;
    height: 187px;
    z-index: -1;
    bottom: 0;
    right: -1rem;
    left: unset;
}

.image-boxes .col-7 .img-wrap::before {
    content: "";
    position: absolute;
    display: block;
    background: url("../images/menu-bg-min.png") center center no-repeat;
    background-size: 100% auto;
    width: 350px;
    height: 187px;
    z-index: -1;
    bottom: 0;
    right: unset;
    left: -1rem;
}
/** END TWO COLUMN IMAGE BOXES COMPONENT  **/

/** MAINTENANCE MODE PAGE **/

.maintenance-page {
    background: var(--dark);
    color: #fff;
}

.maintenance-page h2.proxima {
    color: #fff;
}

.maintenance-page .btn-primary:hover {
    background: var(--secondary);
    color: var(--primary);
}

.maintenance-page .admin-login {
    position: fixed;
    bottom: 0;
    text-align: center;
    width: 100%;
}

.maintenance-page .admin-login a {
    font-weight: normal;
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.5);
}

/** END MAINTENANCE MODE PAGE **/

/** SITE ALERT MESSAGE **/

div.uni-site-alert {
    width: 100%;
    font-weight: bold;
}

div.uni-site-alert div.text {
    padding: 10px 25px;
    margin: 0;
    font-size: inherit;
}

div.uni-site-alert div.text p {
    margin-bottom: 0;
}

div.uni-site-alert div.info {
    background: var(--accent3);
    border: 0 none;
    color: var(--dark);
    background-image: none;
    font-weight: normal;
    margin-bottom: 0;
}

div.uni-site-alert div.low {
    background: var(--accent1);
    border: 0 none;
    color: white;
    background-image: none;
    margin-bottom: 0;
}

div.uni-site-alert div.high {
    background: #e12200;
    border: 0 none;
    color: #fff;
    background-image: none;
    margin-bottom: 0;
}

div.uni-site-alert div.high a {
    color: var(--dark);
}

/** END SITE ALERT MESSAGE **/

/** Focal point **/

.focal-point-indicator::after {
    font-size: 4.5em;
}

.focal-point-wrapper::after {
    content: "Select the focal point of the image. This area will not be cropped out and will appear as close to the center of the cropped image as possible.";
}

@media (max-width: 639px) {

    .square-image,
    .rectangle-image {
        min-height: auto;
    }

    .square-image img {
        width: 100%;
        position: relative;
        min-height: auto;
    }

    .rectangle-image img {
        min-height: 215px;
    }

    .layout--twocol .square-image {
        min-height: auto;
    }
}

@media (max-width: 767px) {
    /*     .page-header .full-img .picture img {
        max-width: 100%;
    } */

    table {
        table-layout: auto;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .vimeo-overlay .vimeo-hero-dimensions {
        width: 100%;
        height: auto;
        position: relative !important;
    }

    .vimeo-overlay .video {
        display: block;
        overflow: visible;
    }

    .vimeo-overlay .hero-content {
        position: relative;
    }

    .vimeo-overlay #playBtn,
    .vimeo-overlay #pauseBtn {
        display: none;
    }
}

.page-header .full-img.container {
    padding: 0;
}

@media only screen and (min-width: 768px) {

    .page-header .full-img {
        position: relative;
        height: 553px;
        overflow: hidden;
    }

    .page-header .full-img.container {
        height: 453px;
    }

    .page-header .full-img .picture img {
        width: auto;
        height: auto;
        z-index: 0;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        max-width: none;
    }

    .header .container::after {
        left: 87.5%;
    }

    .two-column-callout.full-width-on .column-body {
        width: 555px;
        top: 50%;
    }

    .two-column-callout.full-width-on .full-img-wrap {
        height: 546px;
        overflow: hidden;
    }

    .two-column-callout.full-width-on .full-img-wrap img {
        position: absolute;
        inset: 50% 0 0 50%;
        transform: translateY(-50%) translateX(-50%);
        width: 100%;
        height: auto;
    }

    .vimeo-overlay .audio .hero-content {
        position: absolute;
    }

    .vimeo-overlay .video.audio {
        background-color: var(--primary);
        display: flex;
        overflow: hidden;
        min-height: 60vh;
        max-height: none;
    }

    .video-header .video,
    .vimeo-overlay .video {
        max-height: 80vh;
        min-height: 0;
    }

    .video-header h2,
    .vimeo-overlay h2 {
        font-size: 4.8rem;
    }

    .vimeo-overlay .vimeo-hero-dimensions {
        width: auto;
        height: auto;
        position: relative !important;
        display: flex;
    }

    .hero-block::before {
        right: 89.5%;
    }

    .hero-block .img-wrap[data-position="1"] {
        width: 450px;
    }

    .hero-block .img-wrap[data-position="1"] img {
        height: 460px;
    }

    .four-squares {
        padding: 70px 0 90px;
    }

    .four-squares .owl-carousel.owl-loaded {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
    }

    .four-squares .owl-theme .owl-nav {
        position: absolute;
        display: flex;
        flex-direction: row;
        margin: 0;
        height: 45px;
        bottom: unset;
        left: unset;
        right: unset;
        width: 100%;
        z-index: -1;
    }

    .four-squares .owl-nav .owl-prev {
        position: absolute;
        left: -75px;
    }

    .four-squares .owl-nav .owl-next {
        position: absolute;
        right: -75px;
    }

    .three-cards .owl-carousel.owl-loaded {
        display: flex !important;
        flex-direction: column;
        justify-content: center;
    }

    .three-cards .owl-theme .owl-nav {
        position: absolute;
        display: flex;
        flex-direction: row;
        margin: 0;
        height: 45px;
        bottom: unset;
        left: unset;
        right: unset;
        width: 100%;
        z-index: -1;
    }

    .three-cards .owl-nav .owl-prev {
        position: absolute;
        left: -75px;
    }

    .three-cards .owl-nav .owl-next {
        position: absolute;
        right: -75px;
    }
}

@media only screen and (min-width: 992px) {

    html {
        font-size: 16px;
    }

    body.cke_editable,
    html.cke_panel_container body {
        margin-top: 0 !important;
    }

    body.role-anonymous:not(.short-header) {
        margin-top: 90px !important;
    }

    /*body {
        padding-top: 90.5px;
    }*/

    .h1,
    h1 {
        font-size: 3.375rem;
    }

    .logo-image {
        padding: 2.4rem 0;
        height: 150px;
    }

    .not-front .page-header .full-img {
        height: 422px;
        width: 1110px;
        margin: 0 auto;
    }

    .section-menu {
        padding: 1.75rem;
        margin-top: -4rem;
        margin-bottom: 2rem;
    }

    .section-menu::before {
        content: "";
        position: absolute;
        display: block;
        background: url("../images/menu-bg-min.png") center center no-repeat;
        background-size: 100% auto;
        width: 400px;
        height: 187px;
        z-index: -1;
        bottom: -60px;
        right: -4rem;
    }

    .section-menu #section-menu-inner {
        display: block !important;
    }

    .header-slices {
        display: block;
    }

    .node-body {
        padding: 3rem 0 3rem 20px;
    }

    .header-region {
        padding-top: 90px;
    }

    .slideout-wrap {
        top: 90px;
        right: -735px;
    }

    #environment-indicator + .mobile-header + .header + .slideout-wrap {
        top: 124px;
    }

    .slideout-wrap .slideout {
        float: right;
        width: 723px;
        padding: 2rem 5rem 5rem;
        padding-bottom: 0;
        right: -18px;
        position: relative;
    }

    .slideout-wrap .slideout-footer .social-links {
        margin-top: 3.4rem;
        justify-content: flex-end;
    }

    .slideout-wrap .slideout-footer .social-links a {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1.2rem;
        margin-right: 0;
        margin-left: 0.4rem;
    }

    .menu-open .slideout-wrap {
        right: -20px;
        background: rgba(0, 0, 0, 0.3);
        width: 1000%;
    }

    /*    .layout__region--first {
        padding: 4rem 0 6rem;
    }*/

    .lead-text .field--name-field-link {
        display: flex;
        flex-flow: row wrap;
    }

    .lead-text .field--name-field-link a {
        margin-right: 1rem;
        margin-bottom: 1rem;
    }

    .full-width-link-list h3 {
        font-size: 2.3rem;
        font-family: "proxima-nova";
        font-weight: 800;
        margin: 0;
    }

    .full-width-link-list .side-links .field--name-field-link {
        display: flex;
        justify-content: flex-end;
    }

    .carousel-slide .column-body,
    .two-column-link .column-body,
    .two-column-callout .column-body {
        padding: 2rem;
        width: 50%;
        position: absolute;
        top: 0;
        right: 15px;
        margin-right: 0;
    }

    .carousel-slide .img-wrap,
    .two-column-callout .img-wrap,
    .two-column-link .img-wrap {
        margin-top: 0;
        float: left;
        max-width: 75%;
    }

    .two-column-callout.left .img-wrap,
    .two-column-link.left .img-wrap {
        margin-bottom: 0;
    }

    .two-column-link.right .img-wrap,
    .two-column-callout.right .img-wrap {
        float: right;
        margin-bottom: 0;
    }

    .two-column-link.right .column-body,
    .two-column-callout.right .column-body {
        left: 15px;
        right: auto;
    }

    .carousel-slide::before,
    .two-column-link::before,
    .two-column-callout::before {
        bottom: 15%;
    }

    .carousel-component .carousel-nav {
        top: auto;
        bottom: 0;
        margin-bottom: -1.8rem;
        margin-top: 0;
        right: -2rem;
    }

    .carousel-component .carousel-nav a {
        background: url("../images/dark-purple-arrow.png") center center no-repeat var(--secondary);
        border: 0.1875rem solid transparent;
        background-size: 25px auto;
    }

    .carousel-component .carousel-nav a.prev {
        background: url("../images/yellow-arrow.png") center center no-repeat transparent;
        background-size: 25px auto;
        border: 0.1875rem solid var(--secondary);
    }

    .full-width-button::after {
        top: 50%;
    }

    .full-width-button a.full-link {
        text-align: left;
        max-width: none;
        width: auto;
        padding: 0;
        font-size: 2.2857rem;
        line-height: 2.875rem;
    }

    .full-width-button a.full-link::after {
        background: url("../images/dark-purple-arrow.png") right 30px center no-repeat var(--secondary);
        background-size: 24px auto;
        position: absolute;
        margin: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 88px;
        height: 88px;
        border-radius: 88px;
    }

    .full-width-button a.full-link:hover {
        padding-left: 3rem;
        text-decoration: none;
    }

    .full-width-button a.full-link:hover::after,
    .full-width-button a.full-link.goldenrod::after {
        width: 100%;
        background: url("../images/dark-purple-arrow.png") right 30px center no-repeat var(--secondary);
        background-size: 24px auto;
    }

    .link-list .field--name-field-links-list {
        margin-top: 0;
    }

    .accordion .accordion-content {
        padding: 0 2rem 3rem 3rem;
    }

    .accordion a.accordion-title .container::after {
        width: 5.5rem;
        height: 5.5rem;
        background-size: 25px auto;
        top: 2rem;
        left: 2rem;
    }

    .accordion a.collapsed {
        background-size: 30px auto;
    }

    .social-links a {
        width: 2.5625rem;
        height: 2.5625rem;
        font-size: 1.4rem;
    }

    .text-block .field--name-field-link {
        display: flex;
    }

    .text-block .field--name-field-link a {
        margin-right: 1rem;
        margin-bottom: 0;
        width: auto;
    }

    .two-column-callout.left.full-width-on .column-body {
        left: auto;
        right: 0;
        position: absolute;
    }

    .quick-facts .fact {
        height: auto;
        padding: 2rem;
    }

    .quick-facts .dark-purple {
        padding-left: 1rem;
    }

    .quick-facts .teal {
        padding-right: 1rem;
    }

    .single-card .img-overflow .watch-video {
        font-size: 3rem;
    }

    .image-video .video-button {
        font-size: 3rem;
        padding: 0 2rem;
    }

    .image-video .vid div::after {
        height: 5.5rem;
        width: 5.5rem;
        top: 2rem;
    }

    .page-node-type-event .details,
    .page-node-type-directory .details {
        padding-right: 2rem;
    }

    .directory p a {
        text-decoration: none;
        font-size: 1.17rem;
    }

    .three-billboard {
        padding: 4rem 0;
    }

    .billboard-item {
        margin-bottom: 0;
    }

    .three-billboard .billboard-link .btn-primary {
        position: absolute;
        left: 2rem;
        bottom: 1rem;
        right: 2rem;
    }

    .three-billboard .billboard-body {
        margin-bottom: 0;
        height: 100%;
    }

    .three-billboard .billboard-body h3 {
        margin-top: 0.4rem;
        margin-bottom: 1rem;
    }

    .has-link .billboard-body {
        padding-bottom: 6rem;
    }

    .carousel-component .carousel-nav a:hover {
        border-color: var(--primary);
    }

    .carousel-component .carousel-nav a.prev:hover {
        background: url("../images/white-arrow.png") center center no-repeat var(--dark);
        background-size: 25px auto;
        border: 0.1875rem solid var(--dark);
    }

    .carousel-component .column-body {
        margin: 0;
    }

    .events-related-block,
    .events-block,
    .news-block {
        padding: 4rem 0;
    }

    .news-block .news-teaser {
        margin-bottom: 0;
        display: flex;
        height: 100%;
    }

    .events-related-block article,
    .events-block article,
    .news-block article {
        height: 100%;
        margin-bottom: 0;
    }

    .profile-component {
        background: linear-gradient(-70.5deg, var(--accent3b) 47%, #fff 0%);
    }

    .profile-component img {
        padding-top: 0;
        padding-bottom: 0;
    }

    .profile-component .col-lg-7 {
        background: transparent;
    }

    .tab-component {
        background: url("../images/slash-pattern.png") right top no-repeat var(--primary);
        background-size: 432px auto;
        padding-bottom: 0;
        padding-top: 5rem;
    }

    .tab-component::before {
        content: "";
        display: block;
        bottom: 0;
        left: 0;
        position: absolute;
        background: white;
        z-index: 1;
        pointer-events: none;
        height: 72px;
        right: 0;
    }

    .tab-component .nav-tabs .nav-link {
        font-family: "proxima-nova";
        font-size: 1.5625rem;
        font-weight: 800;
        border: none;
        color: var(--accent4);
        border-top: 3px solid;
        border-color: var(--accent4);
        border-radius: 0;
        display: block;
        margin-right: 1rem;
        padding: 0.5rem 1.2rem;
    }

    .tab-component .nav-tabs .nav-link.teal-border {
        color: var(--accent1);
        border-color: var(--accent1);
    }

    .tab-component .nav-tabs .nav-link.goldenrod-border {
        color: var(--secondary);
        border-color: var(--secondary);
    }

    .tab-component .nav-tabs li {
        flex-grow: 1;
    }

    .tab-component .nav-tabs {
        align-content: space-between;
        border-bottom: none;
    }

    .tab-component .pane .inner {
        padding: 3.6rem;
        padding-bottom: 0;
    }

    .tab-component .nav-tabs li:last-child .nav-link {
        margin-right: 0;
    }

    .tab-component .pane .tab-link a {
        margin-top: 3rem;
        margin-bottom: 0;
    }

    .page-node-type-profile .details {
        padding-right: 2rem;
    }

    .video-header .fountain-btn a,
    .vimeo-overlay .fountain-btn a {
        display: inline-block;
    }

    .hero-block .carousel-nav a.next {
        width: 320px;
        border-radius: 30px;
        background-position: right 20px center;
    }

    .hero-block .carousel-nav a.next .button-text {
        padding-left: 1.2rem;
        padding-top: 0.8rem;
        font-size: 18px;
        font-weight: 400;
        color: var(--dark);
        transition: all 300ms ease-in-out;
    }

    .hero-block .carousel-nav a.next .button-text .button-title {
        font-weight: bold;
    }

    .hero-block .carousel-nav a.next:hover {
        border-color: var(--primary);
    }

    .hero-block .carousel-nav a.next:hover .button-text {
        color: white;
    }

    .hero-block::before {
        right: 85.3%;
    }

    .hero-block .carousel-nav {
        bottom: 1rem;
        right: 0;
        margin-top: 0;
        top: auto;
    }

    .hero-block h2 {
        font-size: 5.875rem;
        margin-bottom: 1.875rem;
    }

    .hero-block .hero-slide {
        height: 680px;
    }

    .hero-block .column-body {
        top: 50%;
        transform: translateY(-50%);
        position: absolute;
        margin: 0;
    }

    .hero-block .slide-links {
        display: flex;
        padding-top: 2rem;
    }

    .hero-block .img-wrap[data-position="2"] img {
        height: 460px;
    }

    .hero-block .slide-links a {
        display: inline-block;
        width: auto;
        margin-right: 1rem;
        margin-bottom: 0;
    }

    .hero-block .slivers::before {
        width: 411.5px;
        height: 399px;
        top: 0;
        right: 0;
    }

    .hero-block .img-wrap {
        height: 460px;
        width: 200px;
    }

    .hero-block .img-wrap[data-position="1"] {
        right: 14rem;
        height: 763px;
        width: 664px;
    }

    .hero-block .img-wrap[data-position="1"] img {
        height: 763px;
    }

    .hero-block .img-wrap[data-position="2"] {
        height: 460px;
        width: 200px;
        right: -5rem;
    }

    .vimeo-header .vb-contain {
        display: flex;
        order: 1;
    }

    .vimeo-header .vv-contain {
        order: 2;
    }

    .vimeo-body {
        padding: 50px;
    }

    .vimeo-header #playBtn,
    .vimeo-header #pauseBtn {
        right: 60px;
    }

    .gallery-image {
        text-align: unset;
    }

    .square-image,
    .rectangle-image {
        min-height: 200px;
    }

    .pulled-quote.right .img-wrap {
        margin-top: 0;
    }

    .page-node-type-profile .img-wrap::before,
    .page-node-type-directory .img-wrap::before {
        content: "";
        position: absolute;
        display: block;
        background: url("../images/menu-bg-min.png") center center no-repeat;
        background-size: 100% auto;
        width: 350px;
        height: 187px;
        z-index: -1;
        bottom: -3rem;
        right: -1.2rem;
        left: unset;
    }
}

@media only screen and (max-width: 1199px) {

    h2,
    .h2 {
        font-size: 2.5rem;
    }

    p {
        margin-bottom: 1rem;
    }
}

@media (min-width: 1200px) {

    .header .container::after {
        left: 88.5%;
    }

    .carousel-slide .column-body,
    .two-column-callout .column-body {
        padding: 3rem;
    }
}

@media only screen and (min-width: 1400px) {

    .header .container::after {
        left: 91.5%;
    }

    .header .menu-toggle .toggle {
        margin-right: -2rem;
    }

    .tab-component .pane .tab-subtitle {
        max-width: 84%;
    }

    .tab-component .pane .tab-body {
        padding-right: 3rem;
    }

    .hero-block::before {
        right: 75.3%;
    }

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1340px;
    }

    .layout--threecol-section--33-34-33 .square-image img {
        min-height: 435px;
    }

    .layout--threecol-section--33-34-33 .layout__region--second .square-image img {
        min-height: 446px;
    }

    .image-caption img {
        width: 100%;
    }

    .page-header .full-img.container {
        height: 533px;
    }

    .page-header .full-img.container .picture img {
        width: 100%;
    }

    .page-node-type-profile .img-wrap::before,
    .page-node-type-directory .img-wrap::before {
        content: "";
        position: absolute;
        display: block;
        background: url("../images/menu-bg-min.png") center center no-repeat;
        background-size: 100% auto;
        width: 350px;
        height: 187px;
        z-index: -1;
        bottom: -3rem;
        right: 4rem;
        left: unset;
    }
}

@media only screen and (min-width: 1920px) {
    /* .page-header .full-img:not(.container) {
        height: 553px;
    } */

    .page-header .full-img:not(.container) .picture img {
        width: 100%;
        height: auto;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
}

/*Countdown timer*/

.countdown {
    color: var(--primary);
}

.countdown > .part {
    font-size: 5rem;
    line-height: 3rem;
}

.countdown > .part > .number {
    text-align: center;
}

.countdown > .part.days {
    --num: 365;
}

.countdown > .part.hours {
    --num: 24;
}

.countdown > .part:where(.minutes, .seconds) {
    --num: 60;
}

.countdown > .part > .text {
    text-align: center;
    font-size: 1.17rem;
}

/* EU COOKIE COMPLIANCE POP-UP */

#sliding-popup {
    width: 100%;
    background: var(--primary);
    color: #ffffff;
    font-size: 0.87rem;
    font-weight: bold;
}

.eu-cookie-compliance-content {
    display: block;
}

.eu-cookie-compliance-message {
    max-width: 100%;
    width: 100%;
    text-align: center;
}

.eu-cookie-compliance-message p {
    padding-top: 1.5rem;
}

.eu-cookie-compliance-message a {
    color: var(--secondary);
}

.eu-cookie-compliance-buttons {
    padding-top: 0;
    padding-bottom: 1.5rem;
    width: 100%;
    text-align: center;
    max-width: 100%;
    float: none;
}

.agree-button {
    margin-right: 10px;
}

.decline-button {
    margin-left: 10px;
}

.eu-cookie-compliance-secondary-button,
.eu-cookie-compliance-default-button {
    background: var(--accent1);
    padding: 0.5rem 1rem;
    border: 0 none;
    font-weight: 700;
    transition: all 300ms ease-in-out;
    font-size: 1.17rem;
    width: 150px;
}

/* Timeline */
#owl-timeline h2,
#owl-timeline h3,
#owl-timeline h4,
#owl-timeline h5,
#owl-timeline h6 {
    color: var(--dark);
}

#owl-timeline a,
#owl-timeline li a {
    color: var(--primary);
}

#owl-timeline a:hover,
#owl-timeline li a:hover {
    color: var(--accent4);
}

#owl-timeline .owl-stage-outer {
    overflow: visible;
}

#owl-timeline .owl-stage {
    display: flex;
    align-items: flex-end;
    overflow: visible;
    border-bottom: 4px solid var(--primary);
    padding-bottom: 25px;
    margin-bottom: 60px;
}

.timeline .owl-item .item {
    background: #fff;
    padding: 1rem;
    color: var(--dark);
}

.timeline .owl-item:nth-child(even) .item {
    /*    position: absolute;
    bottom: -100%;
    margin-left: -50%;*/
}

.timeline .owl-item:nth-child(even) {
    /*    margin-top: 100%;
    position: relative;*/
}

.timeline .owl-carousel .owl-item .item::before {
    content: "";
    position: absolute;
    bottom: -15px;
    left: 0;
    width: 0;
    height: 0;
    border-width: 15px 15px 0 0;
    border-color: white transparent transparent;
    border-style: solid;
}

.timeline .owl-carousel .owl-item:nth-child(even) .item::before {
    /*content: "";
    position: absolute;
    top: -15px;
    left: 0;
    width: 0;
    height: 0;
    border-width: 0 15px 15px 0;
    border-color: transparent transparent white transparent;
    border-style: solid;*/
}

.timeline .owl-carousel .owl-item .item::after {
    content: "";
    display: block !important;
    width: 15px;
    height: 15px;
    background: #a884bc;
    border-radius: 15px;
    position: absolute;
    bottom: -35px;
    left: -5px;
    border: 2px solid var(--secondary);
}

.timeline .field--name-field-feature-title p {
    margin-bottom: 0;
}

.timeline .field--name-field-feature-title h2::after,
.paragraph-type--timeline-bubble .field--name-field-feature-title h2::after {
    border-bottom: 4px solid var(--secondary);
    padding-bottom: 2rem;
    width: 7rem;
    content: "";
    display: block;
}
