@charset "UTF-8";
*/.fc {
    direction: ltr;
    text-align: left
}

.fc-rtl {
    text-align: right
}

body .fc {
    font-size: 1em
}

.fc-highlight {
    background: #bce8f1;
    opacity: .3
}

.fc-bgevent {
    background: #8fdf82;
    opacity: .3
}

.fc-nonbusiness {
    background: #d7d7d7
}

.fc button {
    box-sizing: border-box;
    margin: 0;
    height: 2.1em;
    padding: 0 .6em;
    font-size: 1em;
    white-space: nowrap;
    cursor: pointer
}

.fc button::-moz-focus-inner {
    margin: 0;
    padding: 0
}

.fc-state-default {
    border: 1px solid
}

.fc-state-default.fc-corner-left {
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px
}

.fc-state-default.fc-corner-right {
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px
}

.fc button .fc-icon {
    position: relative;
    top: -.05em;
    margin: 0 .2em;
    vertical-align: middle
}

.fc-state-default {
    background-color: #f5f5f5;
    background-image: linear-gradient(to bottom, #fff, #e6e6e6);
    background-repeat: repeat-x;
    border-color: #e6e6e6 #e6e6e6 #bfbfbf;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    color: #333;
    text-shadow: 0 1px 1px rgba(255, 255, 255, .75);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 2px rgba(0, 0, 0, .05)
}

.fc-state-active,
.fc-state-disabled,
.fc-state-down,
.fc-state-hover {
    color: #333;
    background-color: #e6e6e6
}

.fc-state-hover {
    color: #333;
    text-decoration: none;
    background-position: 0 -15px;
    transition: background-position .1s linear
}

.fc-state-active,
.fc-state-down {
    background-color: #ccc;
    background-image: none;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05)
}

.fc-state-disabled {
    cursor: default;
    background-image: none;
    opacity: .65;
    box-shadow: none
}

.fc-button-group {
    display: inline-block
}

.fc .fc-button-group>* {
    float: left;
    margin: 0 0 0 -1px
}

.fc .fc-button-group>:first-child {
    margin-left: 0
}

.fc-popover {
    position: absolute;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .15)
}

.fc-popover .fc-header {
    padding: 2px 4px
}

.fc-popover .fc-header .fc-title {
    margin: 0 2px
}

.fc-popover .fc-header .fc-close {
    cursor: pointer
}

.fc-ltr .fc-popover .fc-header .fc-title,
.fc-rtl .fc-popover .fc-header .fc-close {
    float: left
}

.fc-ltr .fc-popover .fc-header .fc-close,
.fc-rtl .fc-popover .fc-header .fc-title {
    float: right
}

.fc-divider {
    border-style: solid;
    border-width: 1px
}

hr.fc-divider {
    height: 0;
    margin: 0;
    padding: 0 0 2px;
    border-width: 1px 0
}

.fc-clear {
    clear: both
}

.fc-bg,
.fc-bgevent-skeleton,
.fc-helper-skeleton,
.fc-highlight-skeleton {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.fc-bg {
    bottom: 0
}

.fc-bg table {
    height: 100%
}

.fc table {
    width: 100%;
    box-sizing: border-box;
    table-layout: fixed;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 1em
}

.fc th {
    text-align: center
}

.fc td,
.fc th {
    border-style: solid;
    border-width: 1px;
    padding: 0;
    vertical-align: top
}

.fc td.fc-today {
    border-style: double
}

a[data-goto] {
    cursor: pointer
}

a[data-goto]:hover {
    text-decoration: underline
}

.fc .fc-row {
    border-style: solid;
    border-width: 0
}

.fc-row table {
    border-left: 0 hidden transparent;
    border-right: 0 hidden transparent;
    border-bottom: 0 hidden transparent
}

.fc-row:first-child table {
    border-top: 0 hidden transparent
}

.fc-row {
    position: relative
}

.fc-row .fc-bg {
    z-index: 1
}

.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
    bottom: 0
}

.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
    height: 100%
}

.fc-row .fc-bgevent-skeleton td,
.fc-row .fc-highlight-skeleton td {
    border-color: transparent
}

.fc-row .fc-bgevent-skeleton {
    z-index: 2
}

.fc-row .fc-highlight-skeleton {
    z-index: 3
}

.fc-row .fc-content-skeleton {
    position: relative;
    z-index: 4;
    padding-bottom: 2px
}

.fc-row .fc-helper-skeleton {
    z-index: 5
}

.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-helper-skeleton td {
    background: 0 0;
    border-color: transparent
}

.fc-row .fc-content-skeleton td,
.fc-row .fc-helper-skeleton td {
    border-bottom: 0
}

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-helper-skeleton tbody td {
    border-top: 0
}

.fc-scroller {
    -webkit-overflow-scrolling: touch
}

.fc-scroller>.fc-day-grid,
.fc-scroller>.fc-time-grid {
    position: relative;
    width: 100%
}

.fc-event {
    position: relative;
    display: block;
    font-size: .85em;
    line-height: 1.3;
    border-radius: 3px;
    border: 1px solid #3a87ad
}

.fc-event,
.fc-event-dot {
    background-color: #3a87ad
}

.fc-event,
.fc-event:hover {
    color: #fff;
    text-decoration: none
}

.fc-event.fc-draggable,
.fc-event[href] {
    cursor: pointer
}

.fc-not-allowed,
.fc-not-allowed .fc-event {
    cursor: not-allowed
}

.fc-event .fc-bg {
    z-index: 1;
    background: #fff;
    opacity: .25
}

.fc-event .fc-content {
    position: relative;
    z-index: 2
}

.fc-event .fc-resizer {
    position: absolute;
    z-index: 4
}

.fc-event .fc-resizer {
    display: none
}

.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
    display: block
}

#mobile-kg{
display: none;
}


@media (max-width: 768px) {
    #mobile-kg{
        display: block;
    }
}



.fc-event.fc-selected .fc-resizer:before {
    content: "";
    position: absolute;
    z-index: 9999;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin-left: -20px;
    margin-top: -20px
}

.fc-event.fc-selected {
    z-index: 9999 !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .2)
}

.fc-event.fc-selected.fc-dragging {
    box-shadow: 0 2px 7px rgba(0, 0, 0, .3)
}

.fc-h-event.fc-selected:before {
    content: "";
    position: absolute;
    z-index: 3;
    top: -10px;
    bottom: -10px;
    left: 0;
    right: 0
}

.fc-ltr .fc-h-event.fc-not-start,
.fc-rtl .fc-h-event.fc-not-end {
    margin-left: 0;
    border-left-width: 0;
    padding-left: 1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0
}

.fc-ltr .fc-h-event.fc-not-end,
.fc-rtl .fc-h-event.fc-not-start {
    margin-right: 0;
    border-right-width: 0;
    padding-right: 1px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0
}

.fc-ltr .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-end-resizer {
    cursor: w-resize;
    left: -1px
}

.fc-ltr .fc-h-event .fc-end-resizer,
.fc-rtl .fc-h-event .fc-start-resizer {
    cursor: e-resize;
    right: -1px
}

.fc-h-event.fc-allow-mouse-resize .fc-resizer {
    width: 7px;
    top: -1px;
    bottom: -1px
}

.fc-h-event.fc-selected .fc-resizer {
    border-radius: 4px;
    border-width: 1px;
    width: 6px;
    height: 6px;
    border-style: solid;
    border-color: inherit;
    background: #fff;
    top: 50%;
    margin-top: -4px
}

.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
    margin-left: -4px
}

.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
    margin-right: -4px
}

.fc-day-grid-event {
    margin: 1px 2px 0;
    padding: 0 1px
}

tr:first-child>td>.fc-day-grid-event {
    margin-top: 2px
}

.fc-day-grid-event.fc-selected:after {
    content: "";
    position: absolute;
    z-index: 1;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    background: #000;
    opacity: .25
}

.fc-day-grid-event .fc-content {
    white-space: nowrap;
    overflow: hidden
}

.fc-day-grid-event .fc-time {
    font-weight: 700
}

.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
    margin-left: -2px
}

.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
    margin-right: -2px
}

a.fc-more {
    margin: 1px 3px;
    font-size: .85em;
    cursor: pointer;
    text-decoration: none
}

a.fc-more:hover {
    text-decoration: underline
}

.fc-limited {
    display: none
}

.fc-day-grid .fc-row {
    z-index: 1
}

.fc-more-popover {
    z-index: 2;
    width: 220px
}

.fc-more-popover .fc-event-container {
    padding: 10px
}

.fc-now-indicator {
    position: absolute;
    border: 0 solid red
}

.fc-unselectable {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent
}

.fc-unthemed .fc-content,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-list-heading td,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-row,
.fc-unthemed tbody,
.fc-unthemed td,
.fc-unthemed th,
.fc-unthemed thead {
    border-color: #ddd
}

.fc-unthemed .fc-popover {
    background-color: #fff
}

.fc-unthemed .fc-divider,
.fc-unthemed .fc-list-heading td,
.fc-unthemed .fc-popover .fc-header {
    background: #eee
}

.fc-unthemed .fc-popover .fc-header .fc-close {
    color: #666
}

.fc-unthemed td.fc-today {
    background: #fcf8e3
}

.fc-unthemed .fc-disabled-day {
    background: #d7d7d7;
    opacity: .3
}

.fc-icon {
    display: inline-block;
    height: 1em;
    line-height: 1em;
    font-size: 1em;
    text-align: center;
    overflow: hidden;
    font-family: "Courier New", Courier, monospace;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none
}

.fc-icon:after {
    position: relative
}

.fc-icon-left-single-arrow:after {
    content: "‹";
    font-weight: 700;
    font-size: 200%;
    top: -7%
}

.fc-icon-right-single-arrow:after {
    content: "›";
    font-weight: 700;
    font-size: 200%;
    top: -7%
}

.fc-icon-left-double-arrow:after {
    content: "«";
    font-size: 160%;
    top: -7%
}

.fc-icon-right-double-arrow:after {
    content: "»";
    font-size: 160%;
    top: -7%
}

.fc-icon-left-triangle:after {
    content: "◄";
    font-size: 125%;
    top: 3%
}

.fc-icon-right-triangle:after {
    content: "►";
    font-size: 125%;
    top: 3%
}

.fc-icon-down-triangle:after {
    content: "▼";
    font-size: 125%;
    top: 2%
}

.fc-icon-x:after {
    content: "×";
    font-size: 200%;
    top: 6%
}

.fc-unthemed .fc-popover {
    border-width: 1px;
    border-style: solid
}

.fc-unthemed .fc-popover .fc-header .fc-close {
    font-size: .9em;
    margin-top: 2px
}

.fc-unthemed .fc-list-item:hover td {
    background-color: #f5f5f5
}

.ui-widget .fc-disabled-day {
    background-image: none
}

.fc-popover>.ui-widget-header+.ui-widget-content {
    border-top: 0
}

.ui-widget .fc-event {
    color: #fff;
    text-decoration: none;
    font-weight: 400
}

.ui-widget td.fc-axis {
    font-weight: 400
}

.fc-time-grid .fc-slats .ui-widget-content {
    background: 0 0
}

.fc.fc-bootstrap3 a {
    text-decoration: none
}

.fc.fc-bootstrap3 a[data-goto]:hover {
    text-decoration: underline
}

.fc-bootstrap3 hr.fc-divider {
    border-color: inherit
}

.fc-bootstrap3 .fc-today.alert {
    border-radius: 0
}

.fc-bootstrap3 .fc-popover .panel-body {
    padding: 0
}

.fc-bootstrap3 .fc-time-grid .fc-slats table {
    background: 0 0
}

.fc.fc-bootstrap4 a {
    text-decoration: none
}

.fc.fc-bootstrap4 a[data-goto]:hover {
    text-decoration: underline
}

.fc-bootstrap4 hr.fc-divider {
    border-color: inherit
}

.fc-bootstrap4 .fc-today.alert {
    border-radius: 0
}

.fc-bootstrap4 a.fc-event:not([href]):not([tabindex]) {
    color: #fff
}

.fc-bootstrap4 .fc-popover.card {
    position: absolute
}

.fc-bootstrap4 .fc-popover .card-body {
    padding: 0
}

.fc-bootstrap4 .fc-time-grid .fc-slats table {
    background: 0 0
}

.fc-toolbar {
    text-align: center
}

.fc-toolbar.fc-header-toolbar {
    margin-bottom: 1em
}

.fc-toolbar.fc-footer-toolbar {
    margin-top: 1em
}

.fc-toolbar .fc-left {
    float: left
}

.fc-toolbar .fc-right {
    float: right
}

.fc-toolbar .fc-center {
    display: inline-block
}

.fc .fc-toolbar>*>* {
    float: left;
    margin-left: .75em
}

.fc .fc-toolbar>*>:first-child {
    margin-left: 0
}

.fc-toolbar h2 {
    margin: 0
}

.fc-toolbar button {
    position: relative
}

.fc-toolbar .fc-state-hover,
.fc-toolbar .ui-state-hover {
    z-index: 2
}

.fc-toolbar .fc-state-down {
    z-index: 3
}

.fc-toolbar .fc-state-active,
.fc-toolbar .ui-state-active {
    z-index: 4
}

.fc-toolbar button:focus {
    z-index: 5
}

.fc-view-container *,
.fc-view-container :after,
.fc-view-container :before {
    box-sizing: content-box
}

.fc-view,
.fc-view>table {
    position: relative;
    z-index: 1
}

.fc-basicDay-view .fc-content-skeleton,
.fc-basicWeek-view .fc-content-skeleton {
    padding-bottom: 1em
}

.fc-basic-view .fc-body .fc-row {
    min-height: 4em
}

.fc-row.fc-rigid {
    overflow: hidden
}

.fc-row.fc-rigid .fc-content-skeleton {
    position: absolute;
    top: 0;
    left: 0;
    right: 0
}

.fc-day-top.fc-other-month {
    opacity: .3
}

.fc-basic-view .fc-day-number,
.fc-basic-view .fc-week-number {
    padding: 2px
}

.fc-basic-view th.fc-day-number,
.fc-basic-view th.fc-week-number {
    padding: 0 2px
}

.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
    float: right
}

.fc-rtl .fc-basic-view .fc-day-top .fc-day-number {
    float: left
}

.fc-ltr .fc-basic-view .fc-day-top .fc-week-number {
    float: left;
    border-radius: 0 0 3px 0
}

.fc-rtl .fc-basic-view .fc-day-top .fc-week-number {
    float: right;
    border-radius: 0 0 0 3px
}

.fc-basic-view .fc-day-top .fc-week-number {
    min-width: 1.5em;
    text-align: center;
    background-color: #f2f2f2;
    color: grey
}

.fc-basic-view td.fc-week-number {
    text-align: center
}

.fc-basic-view td.fc-week-number>* {
    display: inline-block;
    min-width: 1.25em
}

.fc-agenda-view .fc-day-grid {
    position: relative;
    z-index: 2
}

.fc-agenda-view .fc-day-grid .fc-row {
    min-height: 3em
}

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
    padding-bottom: 1em
}

.fc .fc-axis {
    vertical-align: middle;
    padding: 0 4px;
    white-space: nowrap
}

.fc-ltr .fc-axis {
    text-align: right
}

.fc-rtl .fc-axis {
    text-align: left
}

.fc-time-grid,
.fc-time-grid-container {
    position: relative;
    z-index: 1
}

.fc-time-grid {
    min-height: 100%
}

.fc-time-grid table {
    border: 0 hidden transparent
}

.fc-time-grid>.fc-bg {
    z-index: 1
}

.fc-time-grid .fc-slats,
.fc-time-grid>hr {
    position: relative;
    z-index: 2
}

.fc-time-grid .fc-content-col {
    position: relative
}

.fc-time-grid .fc-content-skeleton {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    right: 0
}

.fc-time-grid .fc-business-container {
    position: relative;
    z-index: 1
}

.fc-time-grid .fc-bgevent-container {
    position: relative;
    z-index: 2
}

.fc-time-grid .fc-highlight-container {
    position: relative;
    z-index: 3
}

.fc-time-grid .fc-event-container {
    position: relative;
    z-index: 4
}

.fc-time-grid .fc-now-indicator-line {
    z-index: 5
}

.fc-time-grid .fc-helper-container {
    position: relative;
    z-index: 6
}

.fc-time-grid .fc-slats td {
    height: 1.5em;
    border-bottom: 0
}

.fc-time-grid .fc-slats .fc-minor td {
    border-top-style: dotted
}

.fc-time-grid .fc-highlight-container {
    position: relative
}

.fc-time-grid .fc-highlight {
    position: absolute;
    left: 0;
    right: 0
}

.fc-ltr .fc-time-grid .fc-event-container {
    margin: 0 2.5% 0 2px
}

.fc-rtl .fc-time-grid .fc-event-container {
    margin: 0 2px 0 2.5%
}

.fc-time-grid .fc-bgevent,
.fc-time-grid .fc-event {
    position: absolute;
    z-index: 1
}

.fc-time-grid .fc-bgevent {
    left: 0;
    right: 0
}

.fc-v-event.fc-not-start {
    border-top-width: 0;
    padding-top: 1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.fc-v-event.fc-not-end {
    border-bottom-width: 0;
    padding-bottom: 1px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0
}

.fc-time-grid-event {
    overflow: hidden
}

.fc-time-grid-event.fc-selected {
    overflow: visible
}

.fc-time-grid-event.fc-selected .fc-bg {
    display: none
}

.fc-time-grid-event .fc-content {
    overflow: hidden
}

.fc-time-grid-event .fc-time,
.fc-time-grid-event .fc-title {
    padding: 0 1px
}

.fc-time-grid-event .fc-time {
    font-size: .85em;
    white-space: nowrap
}

.fc-time-grid-event.fc-short .fc-content {
    white-space: nowrap
}

.fc-time-grid-event.fc-short .fc-time,
.fc-time-grid-event.fc-short .fc-title {
    display: inline-block;
    vertical-align: top
}

.fc-time-grid-event.fc-short .fc-time span {
    display: none
}

.fc-time-grid-event.fc-short .fc-time:before {
    content: attr(data-start)
}

.fc-time-grid-event.fc-short .fc-time:after {
    content: " - "
}

.fc-time-grid-event.fc-short .fc-title {
    font-size: .85em;
    padding: 0
}

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer {
    left: 0;
    right: 0;
    bottom: 0;
    height: 8px;
    overflow: hidden;
    line-height: .5rem;
    font-size: .6875rem;
    font-family: monospace;
    text-align: center;
    cursor: s-resize
}

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after {
    content: "="
}

.fc-time-grid-event.fc-selected .fc-resizer {
    border-radius: 5px;
    border-width: 1px;
    width: 8px;
    height: 8px;
    border-style: solid;
    border-color: inherit;
    background: #fff;
    left: 50%;
    margin-left: -5px;
    bottom: -5px
}

.fc-time-grid .fc-now-indicator-line {
    border-top-width: 1px;
    left: 0;
    right: 0
}

.fc-time-grid .fc-now-indicator-arrow {
    margin-top: -5px
}

.fc-ltr .fc-time-grid .fc-now-indicator-arrow {
    left: 0;
    border-width: 5px 0 5px 6px;
    border-top-color: transparent;
    border-bottom-color: transparent
}

.fc-rtl .fc-time-grid .fc-now-indicator-arrow {
    right: 0;
    border-width: 5px 6px 5px 0;
    border-top-color: transparent;
    border-bottom-color: transparent
}

.fc-event-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px
}

.fc-rtl .fc-list-view {
    direction: rtl
}

.fc-list-view {
    border-width: 1px;
    border-style: solid
}

.fc .fc-list-table {
    table-layout: auto
}

.fc-list-table td {
    border-width: 1px 0 0;
    padding: 8px 14px
}

.fc-list-table tr:first-child td {
    border-top-width: 0
}

.fc-list-heading {
    border-bottom-width: 1px
}

.fc-list-heading td {
    font-weight: 700
}

.fc-ltr .fc-list-heading-main {
    float: left
}

.fc-ltr .fc-list-heading-alt {
    float: right
}

.fc-rtl .fc-list-heading-main {
    float: right
}

.fc-rtl .fc-list-heading-alt {
    float: left
}

.fc-list-item.fc-has-url {
    cursor: pointer
}

.fc-list-item-marker,
.fc-list-item-time {
    white-space: nowrap;
    width: 1px
}

.fc-ltr .fc-list-item-marker {
    padding-right: 0
}

.fc-rtl .fc-list-item-marker {
    padding-left: 0
}

.fc-list-item-title a {
    text-decoration: none;
    color: inherit
}

.fc-list-item-title a[href]:hover {
    text-decoration: underline
}

.fc-list-empty-wrap2 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.fc-list-empty-wrap1 {
    width: 100%;
    height: 100%;
    display: table
}

.fc-list-empty {
    display: table-cell;
    vertical-align: middle;
    text-align: center
}

.fc-unthemed .fc-list-empty {
    background-color: #eee
}

@keyframes plyr-progress {
    to {
        background-position: var(--plyr-progress-loading-size, 25px) 0
    }
}

@keyframes plyr-popup {
    0% {
        opacity: .5;
        transform: translateY(10px)
    }
    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes plyr-fade-in {
    from {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.plyr {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    align-items: center;
    direction: ltr;
    display: flex;
    flex-direction: column;
    font-family: var(--plyr-font-family, inherit);
    font-variant-numeric: tabular-nums;
    font-weight: var(--plyr-font-weight-regular, 400);
    line-height: var(--plyr-line-height, 1.7);
    max-width: 100%;
    min-width: 200px;
    position: relative;
    text-shadow: none;
    transition: box-shadow .3s ease;
    z-index: 0
}

.plyr audio,
.plyr iframe,
.plyr video {
    display: block;
    height: 100%;
    width: 100%
}

.plyr button {
    font: inherit;
    line-height: inherit;
    width: auto
}

.plyr:focus {
    outline: 0
}

.plyr--full-ui {
    box-sizing: border-box
}

.plyr--full-ui *,
.plyr--full-ui ::after,
.plyr--full-ui ::before {
    box-sizing: inherit
}

.plyr--full-ui a,
.plyr--full-ui button,
.plyr--full-ui input,
.plyr--full-ui label {
    touch-action: manipulation
}

.plyr__badge {
    background: var(--plyr-badge-background, hsl(216deg, 15%, 34%));
    border-radius: var(--plyr-badge-border-radius, 2px);
    color: var(--plyr-badge-text-color, #fff);
    font-size: var(--plyr-font-size-badge, 9px);
    line-height: 1;
    padding: 3px 4px
}

.plyr--full-ui ::-webkit-media-text-track-container {
    display: none
}

.plyr__captions {
    animation: plyr-fade-in .3s ease;
    bottom: 0;
    display: none;
    font-size: var(--plyr-font-size-small, 13px);
    left: 0;
    padding: var(--plyr-control-spacing, 10px);
    position: absolute;
    text-align: center;
    transition: transform .4s ease-in-out;
    width: 100%
}

.plyr__captions span:empty {
    display: none
}

@media (min-width:480px) {
    .plyr__captions {
        font-size: var(--plyr-font-size-base, 15px);
        padding: calc(var(--plyr-control-spacing, 10px) * 2)
    }
}

@media (min-width:768px) {
    .plyr__captions {
        font-size: var(--plyr-font-size-large, 18px)
    }
}

.plyr--captions-active .plyr__captions {
    display: block
}

.plyr:not(.plyr--hide-controls) .plyr__controls:not(:empty)~.plyr__captions {
    transform: translateY(calc(var(--plyr-control-spacing, 10px) * -4))
}

.plyr__caption {
    background: var(--plyr-captions-background, rgba(0, 0, 0, .8));
    border-radius: 2px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    color: var(--plyr-captions-text-color, #fff);
    line-height: 185%;
    padding: .2em .5em;
    white-space: pre-wrap
}

.plyr__caption div {
    display: inline
}

.plyr__control {
    background: 0 0;
    border: 0;
    border-radius: var(--plyr-control-radius, 3px);
    color: inherit;
    cursor: pointer;
    flex-shrink: 0;
    overflow: visible;
    padding: calc(var(--plyr-control-spacing, 10px) * .7);
    position: relative;
    transition: all .3s ease
}

.plyr__control svg {
    display: block;
    fill: currentColor;
    height: var(--plyr-control-icon-size, 18px);
    pointer-events: none;
    width: var(--plyr-control-icon-size, 18px)
}

.plyr__control:focus {
    outline: 0
}

.plyr__control.plyr__tab-focus {
    outline: var(--plyr-tab-focus-color, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%)))) dotted 3px;
    outline-offset: 2px
}

a.plyr__control {
    text-decoration: none
}

a.plyr__control::after,
a.plyr__control::before {
    display: none
}

.plyr__control.plyr__control--pressed .icon--not-pressed,
.plyr__control.plyr__control--pressed .label--not-pressed,
.plyr__control:not(.plyr__control--pressed) .icon--pressed,
.plyr__control:not(.plyr__control--pressed) .label--pressed {
    display: none
}

.plyr--full-ui ::-webkit-media-controls {
    display: none
}

.plyr__controls {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    text-align: center
}

.plyr__controls .plyr__progress__container {
    flex: 1;
    min-width: 0
}

.plyr__controls .plyr__controls__item {
    margin-left: calc(var(--plyr-control-spacing, 10px)/ 4)
}

.plyr__controls .plyr__controls__item:first-child {
    margin-left: 0;
    margin-right: auto
}

.plyr__controls .plyr__controls__item.plyr__progress__container {
    padding-left: calc(var(--plyr-control-spacing, 10px)/ 4)
}

.plyr__controls .plyr__controls__item.plyr__time {
    padding: 0 calc(var(--plyr-control-spacing, 10px)/ 2)
}

.plyr__controls .plyr__controls__item.plyr__progress__container:first-child,
.plyr__controls .plyr__controls__item.plyr__time+.plyr__time,
.plyr__controls .plyr__controls__item.plyr__time:first-child {
    padding-left: 0
}

.plyr__controls:empty {
    display: none
}

.plyr [data-plyr=airplay],
.plyr [data-plyr=captions],
.plyr [data-plyr=fullscreen],
.plyr [data-plyr=pip] {
    display: none
}

.plyr--airplay-supported [data-plyr=airplay],
.plyr--captions-enabled [data-plyr=captions],
.plyr--fullscreen-enabled [data-plyr=fullscreen],
.plyr--pip-supported [data-plyr=pip] {
    display: inline-block
}

.plyr__menu {
    display: flex;
    position: relative
}

.plyr__menu .plyr__control svg {
    transition: transform .3s ease
}

.plyr__menu .plyr__control[aria-expanded=true] svg {
    transform: rotate(90deg)
}

.plyr__menu .plyr__control[aria-expanded=true] .plyr__tooltip {
    display: none
}

.plyr__menu__container {
    animation: plyr-popup .2s ease;
    background: var(--plyr-menu-background, rgba(255, 255, 255, .9));
    border-radius: var(--plyr-menu-radius, 4px);
    bottom: 100%;
    box-shadow: var(--plyr-menu-shadow, 0 1px 2px rgba(0, 0, 0, .15));
    color: var(--plyr-menu-color, hsl(216deg, 15%, 34%));
    font-size: var(--plyr-font-size-base, 15px);
    margin-bottom: 10px;
    position: absolute;
    right: -3px;
    text-align: left;
    white-space: nowrap;
    z-index: 3
}

.plyr__menu__container>div {
    overflow: hidden;
    transition: height .35s cubic-bezier(.4, 0, .2, 1), width .35s cubic-bezier(.4, 0, .2, 1)
}

.plyr__menu__container::after {
    border: var(--plyr-menu-arrow-size, 4px) solid transparent;
    border-top-color: var(--plyr-menu-background, rgba(255, 255, 255, .9));
    content: "";
    height: 0;
    position: absolute;
    right: calc(((var(--plyr-control-icon-size, 18px)/ 2) + calc(var(--plyr-control-spacing, 10px) * .7)) - (var(--plyr-menu-arrow-size, 4px)/ 2));
    top: 100%;
    width: 0
}

.plyr__menu__container [role=menu] {
    padding: calc(var(--plyr-control-spacing, 10px) * .7)
}

.plyr__menu__container [role=menuitem],
.plyr__menu__container [role=menuitemradio] {
    margin-top: 2px
}

.plyr__menu__container [role=menuitem]:first-child,
.plyr__menu__container [role=menuitemradio]:first-child {
    margin-top: 0
}

.plyr__menu__container .plyr__control {
    align-items: center;
    color: var(--plyr-menu-color, hsl(216deg, 15%, 34%));
    display: flex;
    font-size: var(--plyr-font-size-menu, var(--plyr-font-size-small, 13px));
    padding: calc(calc(var(--plyr-control-spacing, 10px) * .7)/ 1.5) calc(calc(var(--plyr-control-spacing, 10px) * .7) * 1.5);
    -webkit-user-select: none;
    user-select: none;
    width: 100%
}

.plyr__menu__container .plyr__control>span {
    align-items: inherit;
    display: flex;
    width: 100%
}

.plyr__menu__container .plyr__control::after {
    border: var(--plyr-menu-item-arrow-size, 4px) solid transparent;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

.plyr__menu__container .plyr__control--forward {
    padding-right: calc(calc(var(--plyr-control-spacing, 10px) * .7) * 4)
}

.plyr__menu__container .plyr__control--forward::after {
    border-left-color: var(--plyr-menu-arrow-color, hsl(216deg, 15%, 52%));
    right: calc((calc(var(--plyr-control-spacing, 10px) * .7) * 1.5) - var(--plyr-menu-item-arrow-size, 4px))
}

.plyr__menu__container .plyr__control--forward.plyr__tab-focus::after,
.plyr__menu__container .plyr__control--forward:hover::after {
    border-left-color: currentColor
}

.plyr__menu__container .plyr__control--back {
    font-weight: var(--plyr-font-weight-regular, 400);
    margin: calc(var(--plyr-control-spacing, 10px) * .7);
    margin-bottom: calc(calc(var(--plyr-control-spacing, 10px) * .7)/ 2);
    padding-left: calc(calc(var(--plyr-control-spacing, 10px) * .7) * 4);
    position: relative;
    width: calc(100% - (calc(var(--plyr-control-spacing, 10px) * .7) * 2))
}

.plyr__menu__container .plyr__control--back::after {
    border-right-color: var(--plyr-menu-arrow-color, hsl(216deg, 15%, 52%));
    left: calc((calc(var(--plyr-control-spacing, 10px) * .7) * 1.5) - var(--plyr-menu-item-arrow-size, 4px))
}

.plyr__menu__container .plyr__control--back::before {
    background: var(--plyr-menu-back-border-color, hsl(216deg, 15%, 88%));
    box-shadow: 0 1px 0 var(--plyr-menu-back-border-shadow-color, #fff);
    content: "";
    height: 1px;
    left: 0;
    margin-top: calc(calc(var(--plyr-control-spacing, 10px) * .7)/ 2);
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 100%
}

.plyr__menu__container .plyr__control--back.plyr__tab-focus::after,
.plyr__menu__container .plyr__control--back:hover::after {
    border-right-color: currentColor
}

.plyr__menu__container .plyr__control[role=menuitemradio] {
    padding-left: calc(var(--plyr-control-spacing, 10px) * .7)
}

.plyr__menu__container .plyr__control[role=menuitemradio]::after,
.plyr__menu__container .plyr__control[role=menuitemradio]::before {
    border-radius: 100%
}

.plyr__menu__container .plyr__control[role=menuitemradio]::before {
    background: rgba(0, 0, 0, .1);
    content: "";
    display: block;
    flex-shrink: 0;
    height: 16px;
    margin-right: var(--plyr-control-spacing, 10px);
    transition: all .3s ease;
    width: 16px
}

.plyr__menu__container .plyr__control[role=menuitemradio]::after {
    background: #fff;
    border: 0;
    height: 6px;
    left: 12px;
    opacity: 0;
    top: 50%;
    transform: translateY(-50%) scale(0);
    transition: transform .3s ease, opacity .3s ease;
    width: 6px
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
    background: var(--plyr-control-toggle-checked-background, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%))))
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::after {
    opacity: 1;
    transform: translateY(-50%) scale(1)
}

.plyr__menu__container .plyr__control[role=menuitemradio].plyr__tab-focus::before,
.plyr__menu__container .plyr__control[role=menuitemradio]:hover::before {
    background: rgba(35, 40, 47, .1)
}

.plyr__menu__container .plyr__menu__value {
    align-items: center;
    display: flex;
    margin-left: auto;
    margin-right: calc((calc(var(--plyr-control-spacing, 10px) * .7) - 2px) * -1);
    overflow: hidden;
    padding-left: calc(calc(var(--plyr-control-spacing, 10px) * .7) * 3.5);
    pointer-events: none
}

.plyr--full-ui input[type=range] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-thumb-height, 13px) * 2);
    color: var(--plyr-range-fill-background, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%))));
    display: block;
    height: calc((var(--plyr-range-thumb-active-shadow-width, 3px) * 2) + var(--plyr-range-thumb-height, 13px));
    margin: 0;
    min-width: 0;
    padding: 0;
    transition: box-shadow .3s ease;
    width: 100%
}

.plyr--full-ui input[type=range]::-webkit-slider-runnable-track {
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px);
    -webkit-transition: box-shadow .3s ease;
    transition: box-shadow .3s ease;
    -webkit-user-select: none;
    user-select: none;
    background-image: linear-gradient(to right, currentColor var(--value, 0), transparent var(--value, 0))
}

.plyr--full-ui input[type=range]::-webkit-slider-thumb {
    background: var(--plyr-range-thumb-background, #fff);
    border: 0;
    border-radius: 100%;
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2));
    height: var(--plyr-range-thumb-height, 13px);
    position: relative;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    width: var(--plyr-range-thumb-height, 13px);
    -webkit-appearance: none;
    appearance: none;
    margin-top: calc((var(--plyr-range-thumb-height, 13px) - var(--plyr-range-track-height, 5px))/ 2 * -1)
}

.plyr--full-ui input[type=range]::-moz-range-track {
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px);
    -moz-transition: box-shadow .3s ease;
    transition: box-shadow .3s ease;
    user-select: none
}

.plyr--full-ui input[type=range]::-moz-range-thumb {
    background: var(--plyr-range-thumb-background, #fff);
    border: 0;
    border-radius: 100%;
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2));
    height: var(--plyr-range-thumb-height, 13px);
    position: relative;
    -moz-transition: all .2s ease;
    transition: all .2s ease;
    width: var(--plyr-range-thumb-height, 13px)
}

.plyr--full-ui input[type=range]::-moz-range-progress {
    background: currentColor;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px)
}

.plyr--full-ui input[type=range]::-ms-track {
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px);
    -ms-transition: box-shadow .3s ease;
    transition: box-shadow .3s ease;
    user-select: none;
    color: transparent
}

.plyr--full-ui input[type=range]::-ms-fill-upper {
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px);
    -ms-transition: box-shadow .3s ease;
    transition: box-shadow .3s ease;
    user-select: none
}

.plyr--full-ui input[type=range]::-ms-fill-lower {
    background: 0 0;
    border: 0;
    border-radius: calc(var(--plyr-range-track-height, 5px)/ 2);
    height: var(--plyr-range-track-height, 5px);
    -ms-transition: box-shadow .3s ease;
    transition: box-shadow .3s ease;
    user-select: none;
    background: currentColor
}

.plyr--full-ui input[type=range]::-ms-thumb {
    background: var(--plyr-range-thumb-background, #fff);
    border: 0;
    border-radius: 100%;
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2));
    height: var(--plyr-range-thumb-height, 13px);
    position: relative;
    -ms-transition: all .2s ease;
    transition: all .2s ease;
    width: var(--plyr-range-thumb-height, 13px);
    margin-top: 0
}

.plyr--full-ui input[type=range]::-ms-tooltip {
    display: none
}

.plyr--full-ui input[type=range]::-moz-focus-outer {
    border: 0
}

.plyr--full-ui input[type=range]:focus {
    outline: 0
}

.plyr--full-ui input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
    outline: var(--plyr-tab-focus-color, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%)))) dotted 3px;
    outline-offset: 2px
}

.plyr--full-ui input[type=range].plyr__tab-focus::-moz-range-track {
    outline: var(--plyr-tab-focus-color, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%)))) dotted 3px;
    outline-offset: 2px
}

.plyr--full-ui input[type=range].plyr__tab-focus::-ms-track {
    outline: var(--plyr-tab-focus-color, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%)))) dotted 3px;
    outline-offset: 2px
}

.plyr__poster {
    background-color: var(--plyr-video-background, var(--plyr-video-background, #000));
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity .2s ease;
    width: 100%;
    z-index: 1
}

.plyr--stopped.plyr__poster-enabled .plyr__poster {
    opacity: 1
}

.plyr--youtube.plyr--paused.plyr__poster-enabled:not(.plyr--stopped) .plyr__poster {
    display: none
}

.plyr__time {
    font-size: var(--plyr-font-size-time, var(--plyr-font-size-small, 13px))
}

.plyr__time+.plyr__time::before {
    content: "⁄";
    margin-right: var(--plyr-control-spacing, 10px)
}

@media (max-width:767px) {
    .plyr__time+.plyr__time {
        display: none
    }
}

.plyr__tooltip {
    background: var(--plyr-tooltip-background, rgba(255, 255, 255, .9));
    border-radius: var(--plyr-tooltip-radius, 5px);
    bottom: 100%;
    box-shadow: var(--plyr-tooltip-shadow, 0 1px 2px rgba(0, 0, 0, .15));
    color: var(--plyr-tooltip-color, hsl(216deg, 15%, 34%));
    font-size: var(--plyr-font-size-small, 13px);
    font-weight: var(--plyr-font-weight-regular, 400);
    left: 50%;
    line-height: 1.3;
    margin-bottom: calc(calc(var(--plyr-control-spacing, 10px)/ 2) * 2);
    opacity: 0;
    padding: calc(var(--plyr-control-spacing, 10px)/ 2) calc(calc(var(--plyr-control-spacing, 10px)/ 2) * 1.5);
    pointer-events: none;
    position: absolute;
    transform: translate(-50%, 10px) scale(.8);
    transform-origin: 50% 100%;
    transition: transform .2s .1s ease, opacity .2s .1s ease;
    white-space: nowrap;
    z-index: 2
}

.plyr__tooltip::before {
    border-left: var(--plyr-tooltip-arrow-size, 4px) solid transparent;
    border-right: var(--plyr-tooltip-arrow-size, 4px) solid transparent;
    border-top: var(--plyr-tooltip-arrow-size, 4px) solid var(--plyr-tooltip-background, rgba(255, 255, 255, .9));
    bottom: calc(var(--plyr-tooltip-arrow-size, 4px) * -1);
    content: "";
    height: 0;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    width: 0;
    z-index: 2
}

.plyr .plyr__control.plyr__tab-focus .plyr__tooltip,
.plyr .plyr__control:hover .plyr__tooltip,
.plyr__tooltip--visible {
    opacity: 1;
    transform: translate(-50%, 0) scale(1)
}

.plyr .plyr__control:hover .plyr__tooltip {
    z-index: 3
}

.plyr__controls>.plyr__control:first-child .plyr__tooltip,
.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip {
    left: 0;
    transform: translate(0, 10px) scale(.8);
    transform-origin: 0 100%
}

.plyr__controls>.plyr__control:first-child .plyr__tooltip::before,
.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip::before {
    left: calc((var(--plyr-control-icon-size, 18px)/ 2) + calc(var(--plyr-control-spacing, 10px) * .7))
}

.plyr__controls>.plyr__control:last-child .plyr__tooltip {
    left: auto;
    right: 0;
    transform: translate(0, 10px) scale(.8);
    transform-origin: 100% 100%
}

.plyr__controls>.plyr__control:last-child .plyr__tooltip::before {
    left: auto;
    right: calc((var(--plyr-control-icon-size, 18px)/ 2) + calc(var(--plyr-control-spacing, 10px) * .7));
    transform: translateX(50%)
}

.plyr__controls>.plyr__control:first-child .plyr__tooltip--visible,
.plyr__controls>.plyr__control:first-child+.plyr__control .plyr__tooltip--visible,
.plyr__controls>.plyr__control:first-child+.plyr__control.plyr__tab-focus .plyr__tooltip,
.plyr__controls>.plyr__control:first-child+.plyr__control:hover .plyr__tooltip,
.plyr__controls>.plyr__control:first-child.plyr__tab-focus .plyr__tooltip,
.plyr__controls>.plyr__control:first-child:hover .plyr__tooltip,
.plyr__controls>.plyr__control:last-child .plyr__tooltip--visible,
.plyr__controls>.plyr__control:last-child.plyr__tab-focus .plyr__tooltip,
.plyr__controls>.plyr__control:last-child:hover .plyr__tooltip {
    transform: translate(0, 0) scale(1)
}

.plyr__progress {
    left: calc(var(--plyr-range-thumb-height, 13px) * .5);
    margin-right: var(--plyr-range-thumb-height, 13px);
    position: relative
}

.plyr__progress input[type=range],
.plyr__progress__buffer {
    margin-left: calc(var(--plyr-range-thumb-height, 13px) * -.5);
    margin-right: calc(var(--plyr-range-thumb-height, 13px) * -.5);
    width: calc(100% + var(--plyr-range-thumb-height, 13px))
}

.plyr__progress input[type=range] {
    position: relative;
    z-index: 2
}

.plyr__progress .plyr__tooltip {
    left: 0;
    max-width: 120px;
    overflow-wrap: break-word
}

.plyr__progress__buffer {
    -webkit-appearance: none;
    background: 0 0;
    border: 0;
    border-radius: 100px;
    height: var(--plyr-range-track-height, 5px);
    left: 0;
    margin-top: calc((var(--plyr-range-track-height, 5px)/ 2) * -1);
    padding: 0;
    position: absolute;
    top: 50%
}

.plyr__progress__buffer::-webkit-progress-bar {
    background: 0 0
}

.plyr__progress__buffer::-webkit-progress-value {
    background: currentColor;
    border-radius: 100px;
    min-width: var(--plyr-range-track-height, 5px);
    -webkit-transition: width .2s ease;
    transition: width .2s ease
}

.plyr__progress__buffer::-moz-progress-bar {
    background: currentColor;
    border-radius: 100px;
    min-width: var(--plyr-range-track-height, 5px);
    -moz-transition: width .2s ease;
    transition: width .2s ease
}

.plyr__progress__buffer::-ms-fill {
    border-radius: 100px;
    -ms-transition: width .2s ease;
    transition: width .2s ease
}

.plyr--loading .plyr__progress__buffer {
    animation: plyr-progress 1s linear infinite;
    background-image: linear-gradient(-45deg, var(--plyr-progress-loading-background, rgba(35, 40, 47, .6)) 25%, transparent 25%, transparent 50%, var(--plyr-progress-loading-background, rgba(35, 40, 47, .6)) 50%, var(--plyr-progress-loading-background, rgba(35, 40, 47, .6)) 75%, transparent 75%, transparent);
    background-repeat: repeat-x;
    background-size: var(--plyr-progress-loading-size, 25px) var(--plyr-progress-loading-size, 25px);
    color: transparent
}

.plyr--video.plyr--loading .plyr__progress__buffer {
    background-color: var(--plyr-video-progress-buffered-background, rgba(255, 255, 255, .25))
}

.plyr--audio.plyr--loading .plyr__progress__buffer {
    background-color: var(--plyr-audio-progress-buffered-background, rgba(193, 200, 209, .6))
}

.plyr__progress__marker {
    background-color: var(--plyr-progress-marker-background, #fff);
    border-radius: 1px;
    height: var(--plyr-range-track-height, 5px);
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: var(--plyr-progress-marker-width, 3px);
    z-index: 3
}

.plyr__volume {
    align-items: center;
    display: flex;
    max-width: 110px;
    min-width: 80px;
    position: relative;
    width: 20%
}

.plyr__volume input[type=range] {
    margin-left: calc(var(--plyr-control-spacing, 10px)/ 2);
    margin-right: calc(var(--plyr-control-spacing, 10px)/ 2);
    position: relative;
    z-index: 2
}

.plyr--is-ios .plyr__volume {
    min-width: 0;
    width: auto
}

.plyr--audio {
    display: block
}

.plyr--audio .plyr__controls {
    background: var(--plyr-audio-controls-background, #fff);
    border-radius: inherit;
    color: var(--plyr-audio-control-color, hsl(216deg, 15%, 34%));
    padding: var(--plyr-control-spacing, 10px)
}

.plyr--audio .plyr__control.plyr__tab-focus,
.plyr--audio .plyr__control:hover,
.plyr--audio .plyr__control[aria-expanded=true] {
    background: var(--plyr-audio-control-background-hover, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%))));
    color: var(--plyr-audio-control-color-hover, #fff)
}

.plyr--full-ui.plyr--audio input[type=range]::-webkit-slider-runnable-track {
    background-color: var(--plyr-audio-range-track-background, var(--plyr-audio-progress-buffered-background, rgba(193, 200, 209, .6)))
}

.plyr--full-ui.plyr--audio input[type=range]::-moz-range-track {
    background-color: var(--plyr-audio-range-track-background, var(--plyr-audio-progress-buffered-background, rgba(193, 200, 209, .6)))
}

.plyr--full-ui.plyr--audio input[type=range]::-ms-track {
    background-color: var(--plyr-audio-range-track-background, var(--plyr-audio-progress-buffered-background, rgba(193, 200, 209, .6)))
}

.plyr--full-ui.plyr--audio input[type=range]:active::-webkit-slider-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(35, 40, 47, .1))
}

.plyr--full-ui.plyr--audio input[type=range]:active::-moz-range-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(35, 40, 47, .1))
}

.plyr--full-ui.plyr--audio input[type=range]:active::-ms-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(35, 40, 47, .1))
}

.plyr--audio .plyr__progress__buffer {
    color: var(--plyr-audio-progress-buffered-background, rgba(193, 200, 209, .6))
}

.plyr--video {
    background: var(--plyr-video-background, var(--plyr-video-background, #000));
    overflow: hidden
}

.plyr--video.plyr--menu-open {
    overflow: visible
}

.plyr__video-wrapper {
    background: var(--plyr-video-background, var(--plyr-video-background, #000));
    height: 100%;
    margin: auto;
    overflow: hidden;
    position: relative;
    width: 100%
}

.plyr__video-embed,
.plyr__video-wrapper--fixed-ratio {
    aspect-ratio: 16/9
}

@supports not (aspect-ratio:16/9) {
    .plyr__video-embed,
    .plyr__video-wrapper--fixed-ratio {
        height: 0;
        padding-bottom: 56.25%;
        position: relative
    }
}

.plyr__video-embed iframe,
.plyr__video-wrapper--fixed-ratio video {
    border: 0;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.plyr--full-ui .plyr__video-embed>.plyr__video-embed__container {
    padding-bottom: 240%;
    position: relative;
    transform: translateY(-38.28125%)
}

.plyr--video .plyr__controls {
    background: var(--plyr-video-controls-background, linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .75)));
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit;
    bottom: 0;
    color: var(--plyr-video-control-color, #fff);
    left: 0;
    padding: calc(var(--plyr-control-spacing, 10px)/ 2);
    padding-top: calc(var(--plyr-control-spacing, 10px) * 2);
    position: absolute;
    right: 0;
    transition: opacity .4s ease-in-out, transform .4s ease-in-out;
    z-index: 3
}

@media (min-width:480px) {
    .plyr--video .plyr__controls {
        padding: var(--plyr-control-spacing, 10px);
        padding-top: calc(var(--plyr-control-spacing, 10px) * 3.5)
    }
}

.plyr--video.plyr--hide-controls .plyr__controls {
    opacity: 0;
    pointer-events: none;
    transform: translateY(100%)
}

.plyr--video .plyr__control.plyr__tab-focus,
.plyr--video .plyr__control:hover,
.plyr--video .plyr__control[aria-expanded=true] {
    background: var(--plyr-video-control-background-hover, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%))));
    color: var(--plyr-video-control-color-hover, #fff)
}

.plyr__control--overlaid {
    background: var(--plyr-video-control-background-hover, var(--plyr-color-main, var(--plyr-color-main, hsl(198deg, 100%, 50%))));
    border: 0;
    border-radius: 100%;
    color: var(--plyr-video-control-color, #fff);
    display: none;
    left: 50%;
    opacity: .9;
    padding: calc(var(--plyr-control-spacing, 10px) * 1.5);
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
    z-index: 2
}

.plyr__control--overlaid svg {
    left: 2px;
    position: relative
}

.plyr__control--overlaid:focus,
.plyr__control--overlaid:hover {
    opacity: 1
}

.plyr--playing .plyr__control--overlaid {
    opacity: 0;
    visibility: hidden
}

.plyr--full-ui.plyr--video .plyr__control--overlaid {
    display: block
}

.plyr--full-ui.plyr--video input[type=range]::-webkit-slider-runnable-track {
    background-color: var(--plyr-video-range-track-background, var(--plyr-video-progress-buffered-background, rgba(255, 255, 255, .25)))
}

.plyr--full-ui.plyr--video input[type=range]::-moz-range-track {
    background-color: var(--plyr-video-range-track-background, var(--plyr-video-progress-buffered-background, rgba(255, 255, 255, .25)))
}

.plyr--full-ui.plyr--video input[type=range]::-ms-track {
    background-color: var(--plyr-video-range-track-background, var(--plyr-video-progress-buffered-background, rgba(255, 255, 255, .25)))
}

.plyr--full-ui.plyr--video input[type=range]:active::-webkit-slider-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(255, 255, 255, .5))
}

.plyr--full-ui.plyr--video input[type=range]:active::-moz-range-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(255, 255, 255, .5))
}

.plyr--full-ui.plyr--video input[type=range]:active::-ms-thumb {
    box-shadow: var(--plyr-range-thumb-shadow, 0 1px 1px rgba(35, 40, 47, .15), 0 0 0 1px rgba(35, 40, 47, .2)), 0 0 0 var(--plyr-range-thumb-active-shadow-width, 3px) var(--plyr-audio-range-thumb-active-shadow-color, rgba(255, 255, 255, .5))
}

.plyr--video .plyr__progress__buffer {
    color: var(--plyr-video-progress-buffered-background, rgba(255, 255, 255, .25))
}

.plyr:fullscreen {
    background: #000;
    border-radius: 0 !important;
    height: 100%;
    margin: 0;
    width: 100%
}

.plyr:fullscreen video {
    height: 100%
}

.plyr:fullscreen .plyr__control .icon--exit-fullscreen {
    display: block
}

.plyr:fullscreen .plyr__control .icon--exit-fullscreen+svg {
    display: none
}

.plyr:fullscreen.plyr--hide-controls {
    cursor: none
}

@media (min-width:1024px) {
    .plyr:fullscreen .plyr__captions {
        font-size: var(--plyr-font-size-xlarge, 21px)
    }
}

.plyr--fullscreen-fallback {
    background: #000;
    border-radius: 0 !important;
    height: 100%;
    margin: 0;
    width: 100%;
    bottom: 0;
    display: block;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 10000000
}

.plyr--fullscreen-fallback video {
    height: 100%
}

.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen {
    display: block
}

.plyr--fullscreen-fallback .plyr__control .icon--exit-fullscreen+svg {
    display: none
}

.plyr--fullscreen-fallback.plyr--hide-controls {
    cursor: none
}

@media (min-width:1024px) {
    .plyr--fullscreen-fallback .plyr__captions {
        font-size: var(--plyr-font-size-xlarge, 21px)
    }
}

.plyr__ads {
    border-radius: inherit;
    bottom: 0;
    cursor: pointer;
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    z-index: -1
}

.plyr__ads>div,
.plyr__ads>div iframe {
    height: 100%;
    position: absolute;
    width: 100%
}

.plyr__ads::after {
    background: hsl(216deg, 15%, 16%);
    border-radius: 2px;
    bottom: var(--plyr-control-spacing, 10px);
    color: #fff;
    content: attr(data-badge-text);
    font-size: .6875rem;
    padding: 2px 6px;
    pointer-events: none;
    position: absolute;
    right: var(--plyr-control-spacing, 10px);
    z-index: 3
}

.plyr__ads:empty::after {
    display: none
}

.plyr__cues {
    background: currentColor;
    display: block;
    height: var(--plyr-range-track-height, 5px);
    left: 0;
    opacity: .8;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 3px;
    z-index: 3
}

.plyr__preview-thumb {
    background-color: var(--plyr-tooltip-background, rgba(255, 255, 255, .9));
    border-radius: var(--plyr-tooltip-radius, 5px);
    bottom: 100%;
    box-shadow: var(--plyr-tooltip-shadow, 0 1px 2px rgba(0, 0, 0, .15));
    margin-bottom: calc(calc(var(--plyr-control-spacing, 10px)/ 2) * 2);
    opacity: 0;
    padding: 3px;
    pointer-events: none;
    position: absolute;
    transform: translate(0, 10px) scale(.8);
    transform-origin: 50% 100%;
    transition: transform .2s .1s ease, opacity .2s .1s ease;
    z-index: 2
}

.plyr__preview-thumb--is-shown {
    opacity: 1;
    transform: translate(0, 0) scale(1)
}

.plyr__preview-thumb::before {
    border-left: var(--plyr-tooltip-arrow-size, 4px) solid transparent;
    border-right: var(--plyr-tooltip-arrow-size, 4px) solid transparent;
    border-top: var(--plyr-tooltip-arrow-size, 4px) solid var(--plyr-tooltip-background, rgba(255, 255, 255, .9));
    bottom: calc(var(--plyr-tooltip-arrow-size, 4px) * -1);
    content: "";
    height: 0;
    left: calc(50% + var(--preview-arrow-offset));
    position: absolute;
    transform: translateX(-50%);
    width: 0;
    z-index: 2
}

.plyr__preview-thumb__image-container {
    background: hsl(216deg, 15%, 79%);
    border-radius: calc(var(--plyr-tooltip-radius, 5px) - 1px);
    overflow: hidden;
    position: relative;
    z-index: 0
}

.plyr__preview-thumb__image-container img,
.plyr__preview-thumb__image-container::after {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.plyr__preview-thumb__image-container::after {
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);
    content: "";
    pointer-events: none
}

.plyr__preview-thumb__image-container img {
    max-height: none;
    max-width: none
}

.plyr__preview-thumb__time-container {
    background: var(--plyr-video-controls-background, linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, .75)));
    border-bottom-left-radius: calc(var(--plyr-tooltip-radius, 5px) - 1px);
    border-bottom-right-radius: calc(var(--plyr-tooltip-radius, 5px) - 1px);
    bottom: 0;
    left: 0;
    line-height: 1.1;
    padding: 20px 6px 6px;
    position: absolute;
    right: 0;
    z-index: 3
}

.plyr__preview-thumb__time-container span {
    color: #fff;
    font-size: var(--plyr-font-size-time, var(--plyr-font-size-small, 13px))
}

.plyr__preview-scrubbing {
    bottom: 0;
    filter: blur(1px);
    height: 100%;
    left: 0;
    margin: auto;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity .3s ease;
    width: 100%;
    z-index: 1
}

.plyr__preview-scrubbing--is-shown {
    opacity: 1
}

.plyr__preview-scrubbing img {
    height: 100%;
    left: 0;
    max-height: none;
    max-width: none;
    object-fit: contain;
    position: absolute;
    top: 0;
    width: 100%
}

.plyr--no-transition {
    transition: none !important
}

.plyr__sr-only {
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
    border: 0 !important;
    height: 1px !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important
}

.plyr [hidden] {
    display: none !important
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: 0
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after,
.slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.slick-lightbox {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: #000;
    transition: opacity .5s ease
}

.slick-lightbox .slick-loading .slick-list {
    background-color: transparent
}

.slick-lightbox .slick-prev {
    left: 15px
}

.slick-lightbox .slick-next {
    right: 15px
}

.slick-lightbox-hide {
    opacity: 0
}

.slick-lightbox-hide-init {
    position: absolute;
    top: -9999px;
    opacity: 0
}

.slick-lightbox-inner {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.slick-lightbox-slick-item {
    text-align: center;
    overflow: hidden
}

.slick-lightbox-slick-item:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -.25em
}

.slick-caption-bottom .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    width: 100%;
    margin-bottom: 20px
}

.slick-caption-dynamic .slick-lightbox-slick-item .slick-lightbox-slick-item .slick-lightbox-slick-caption {
    display: block;
    text-align: center
}

.slick-lightbox-slick-item-inner {
    display: inline-block;
    vertical-align: middle;
    max-width: 90%;
    max-height: 90%
}

.slick-lightbox-slick-img {
    margin: 0 auto;
    display: block;
    max-width: 90%;
    max-height: 90%
}

.slick-lightbox-slick-caption {
    margin: 10px 0 0;
    color: #fff
}

.slick-lightbox-close {
    position: absolute;
    top: 15px;
    right: 15px;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0;
    font-size: 0;
    cursor: pointer;
    background: 0 0;
    color: transparent;
    padding: 0;
    border: none
}

.slick-lightbox-close:focus {
    outline: 0
}

.slick-lightbox-close:before {
    font-family: slick;
    font-size: 1.25rem;
    line-height: 1;
    color: #fff;
    opacity: .85;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "×"
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Light.woff2) format("woff2"), url(Aime-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Light.woff2) format("woff2"), url(Aime-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Bold.woff2) format("woff2"), url(Aime-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Bold.woff2) format("woff2"), url(Aime-Bold.woff) format("woff");
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Regular.woff2) format("woff2"), url(Aime-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: Aime;
    src: url(/fonts/Aime-Regular.woff2) format("woff2"), url(Aime-Regular.woff) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

:root {
    --alert-height: 50px
}

.redactor-box .redactor-styles .redactor-dropdown-h1,
.redactor-box .redactor-styles h1,
.redactor-dropdown .redactor-dropdown-h1,
.redactor-dropdown h1 {
    color: #1d2eb7
}

.redactor-box .redactor-styles .redactor-dropdown-h2,
.redactor-box .redactor-styles h2,
.redactor-dropdown .redactor-dropdown-h2,
.redactor-dropdown h2 {
    color: #1d2eb7
}

.redactor-box .redactor-styles .redactor-dropdown-h3,
.redactor-box .redactor-styles h3,
.redactor-dropdown .redactor-dropdown-h3,
.redactor-dropdown h3 {
    color: #1d2eb7
}

.redactor-box .redactor-styles .redactor-dropdown-h4,
.redactor-box .redactor-styles h4,
.redactor-dropdown .redactor-dropdown-h4,
.redactor-dropdown h4 {
    color: #1d2eb7
}

.redactor-box .redactor-styles .redactor-dropdown-h5,
.redactor-box .redactor-styles h5,
.redactor-dropdown .redactor-dropdown-h5,
.redactor-dropdown h5 {
    color: #1d2eb7
}

.redactor-box .redactor-styles .redactor-dropdown-h6,
.redactor-box .redactor-styles h6,
.redactor-dropdown .redactor-dropdown-h6,
.redactor-dropdown h6 {
    color: #1d2eb7
}

.redactor-styles .has-text-centered {
    text-align: center
}

.redactor-styles .has-text-left {
    text-align: left
}

.redactor-styles .has-text-right {
    text-align: right
}

.redactor-styles .has-text-justified {
    text-align: justify
}

.sidebar nav li a[href$="utilities/asset-indexes"],
.sidebar nav li a[href$="utilities/clear-caches"],
.sidebar nav li a[href$="utilities/db-backup"],
.sidebar nav li a[href$="utilities/deprecation-errors"],
.sidebar nav li a[href$="utilities/find-replace"],
.sidebar nav li a[href$="utilities/migrations"],
.sidebar nav li a[href$="utilities/php-info"],
.sidebar nav li a[href$="utilities/project-config"],
.sidebar nav li a[href$="utilities/queue-manager"],
.sidebar nav li a[href$="utilities/system-messages"],
.sidebar nav li a[href$="utilities/system-report"],
.sidebar nav li a[href$="utilities/updates"] {
    display: none
}

#nav-utilities .badge {
    display: none
}

.image-right {
    display: flex;
    margin-left: auto;
    justify-content: flex-end
}

.image-center {
    display: flex;
    margin: 0 auto;
    justify-content: center
}

.image-left {
    display: flex;
    margin-right: auto;
    justify-content: flex-start
}

.redactor-styles ol ol li {
    list-style-type: decimal !important
}

.redactor-styles ol ol ol li {
    list-style-type: decimal !important
}

.redactor-box .redactor-styles figure.image-center.redactor-component {
    width: 100%;
    justify-content: center;
    display: flex;
    margin: auto
}

.redactor-box .redactor-styles figure.image-right.redactor-component {
    float: right;
    margin-left: 16px
}

.redactor-box .redactor-styles figure.image-left.redactor-component {
    float: left;
    margin-right: 16px
}

.container {
    flex-grow: 1;
    margin: 0 auto;
    position: relative;
    width: auto;
    padding: 0 20px;
    max-width: 780px
}

@media screen and (min-width:1024px) {
    .container {
        padding: 0;
        max-width: 980px
    }
    .container.is-fluid {
        max-width: none
    }
    .container.is-max-tablet {
        max-width: 780px
    }
}

@media screen and (min-width:1244px) {
    .container {
        max-width: 1180px
    }
    .container.is-max-desktop {
        max-width: 980px
    }
    .container.is-fluid {
        max-width: none
    }
}

@media screen and (min-width:1408px) {
    .container {
        max-width: 1354px
    }
    .container.is-max-widescreen {
        max-width: 1180px
    }
    .container.is-fluid {
        max-width: none
    }
}

.is-block {
    display: block !important
}

@media screen and (max-width:767px) {
    .is-block-mobile {
        display: block !important
    }
}

@media screen and (min-width:768px),
print {
    .is-block-tablet {
        display: block !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-block-tablet-only {
        display: block !important
    }
}

@media screen and (max-width:1023px) {
    .is-block-touch {
        display: block !important
    }
}

@media screen and (min-width:1024px) {
    .is-block-desktop {
        display: block !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-block-desktop-only {
        display: block !important
    }
}

@media screen and (min-width:1244px) {
    .is-block-widescreen {
        display: block !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-block-widescreen-only {
        display: block !important
    }
}

@media screen and (min-width:1408px) {
    .is-block-fullhd {
        display: block !important
    }
}

.is-flex {
    display: flex !important
}

@media screen and (max-width:767px) {
    .is-flex-mobile {
        display: flex !important
    }
}

@media screen and (min-width:768px),
print {
    .is-flex-tablet {
        display: flex !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-flex-tablet-only {
        display: flex !important
    }
}

@media screen and (max-width:1023px) {
    .is-flex-touch {
        display: flex !important
    }
}

@media screen and (min-width:1024px) {
    .is-flex-desktop {
        display: flex !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-flex-desktop-only {
        display: flex !important
    }
}

@media screen and (min-width:1244px) {
    .is-flex-widescreen {
        display: flex !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-flex-widescreen-only {
        display: flex !important
    }
}

@media screen and (min-width:1408px) {
    .is-flex-fullhd {
        display: flex !important
    }
}

.is-inline {
    display: inline !important
}

@media screen and (max-width:767px) {
    .is-inline-mobile {
        display: inline !important
    }
}

@media screen and (min-width:768px),
print {
    .is-inline-tablet {
        display: inline !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-inline-tablet-only {
        display: inline !important
    }
}

@media screen and (max-width:1023px) {
    .is-inline-touch {
        display: inline !important
    }
}

@media screen and (min-width:1024px) {
    .is-inline-desktop {
        display: inline !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-inline-desktop-only {
        display: inline !important
    }
}

@media screen and (min-width:1244px) {
    .is-inline-widescreen {
        display: inline !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-inline-widescreen-only {
        display: inline !important
    }
}

@media screen and (min-width:1408px) {
    .is-inline-fullhd {
        display: inline !important
    }
}

.is-inline-block {
    display: inline-block !important
}

@media screen and (max-width:767px) {
    .is-inline-block-mobile {
        display: inline-block !important
    }
}

@media screen and (min-width:768px),
print {
    .is-inline-block-tablet {
        display: inline-block !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-inline-block-tablet-only {
        display: inline-block !important
    }
}

@media screen and (max-width:1023px) {
    .is-inline-block-touch {
        display: inline-block !important
    }
}

@media screen and (min-width:1024px) {
    .is-inline-block-desktop {
        display: inline-block !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-inline-block-desktop-only {
        display: inline-block !important
    }
}

@media screen and (min-width:1244px) {
    .is-inline-block-widescreen {
        display: inline-block !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-inline-block-widescreen-only {
        display: inline-block !important
    }
}

@media screen and (min-width:1408px) {
    .is-inline-block-fullhd {
        display: inline-block !important
    }
}

.is-inline-flex {
    display: inline-flex !important
}

@media screen and (max-width:767px) {
    .is-inline-flex-mobile {
        display: inline-flex !important
    }
}

@media screen and (min-width:768px),
print {
    .is-inline-flex-tablet {
        display: inline-flex !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-inline-flex-tablet-only {
        display: inline-flex !important
    }
}

@media screen and (max-width:1023px) {
    .is-inline-flex-touch {
        display: inline-flex !important
    }
}

@media screen and (min-width:1024px) {
    .is-inline-flex-desktop {
        display: inline-flex !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-inline-flex-desktop-only {
        display: inline-flex !important
    }
}

@media screen and (min-width:1244px) {
    .is-inline-flex-widescreen {
        display: inline-flex !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-inline-flex-widescreen-only {
        display: inline-flex !important
    }
}

@media screen and (min-width:1408px) {
    .is-inline-flex-fullhd {
        display: inline-flex !important
    }
}

.is-hidden {
    display: none !important
}

.is-sr-only {
    border: none !important;
    clip: rect(0, 0, 0, 0) !important;
    height: .01em !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: .01em !important
}

@media screen and (max-width:767px) {
    .is-hidden-mobile {
        display: none !important
    }
}

@media screen and (min-width:768px),
print {
    .is-hidden-tablet {
        display: none !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-hidden-tablet-only {
        display: none !important
    }
}

@media screen and (max-width:1023px) {
    .is-hidden-touch {
        display: none !important
    }
}

@media screen and (min-width:1024px) {
    .is-hidden-desktop {
        display: none !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-hidden-desktop-only {
        display: none !important
    }
}

@media screen and (min-width:1244px) {
    .is-hidden-widescreen {
        display: none !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-hidden-widescreen-only {
        display: none !important
    }
}

@media screen and (min-width:1408px) {
    .is-hidden-fullhd {
        display: none !important
    }
}

.is-invisible {
    visibility: hidden !important
}

@media screen and (max-width:767px) {
    .is-invisible-mobile {
        visibility: hidden !important
    }
}

@media screen and (min-width:768px),
print {
    .is-invisible-tablet {
        visibility: hidden !important
    }
}

@media screen and (min-width:768px) and (max-width:1023px) {
    .is-invisible-tablet-only {
        visibility: hidden !important
    }
}

@media screen and (max-width:1023px) {
    .is-invisible-touch {
        visibility: hidden !important
    }
}

@media screen and (min-width:1024px) {
    .is-invisible-desktop {
        visibility: hidden !important
    }
}

@media screen and (min-width:1024px) and (max-width:1243px) {
    .is-invisible-desktop-only {
        visibility: hidden !important
    }
}

@media screen and (min-width:1244px) {
    .is-invisible-widescreen {
        visibility: hidden !important
    }
}

@media screen and (min-width:1244px) and (max-width:1407px) {
    .is-invisible-widescreen-only {
        visibility: hidden !important
    }
}

@media screen and (min-width:1408px) {
    .is-invisible-fullhd {
        visibility: hidden !important
    }
}

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */

blockquote,
body,
dd,
dl,
dt,
fieldset,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
html,
iframe,
legend,
li,
ol,
p,
pre,
textarea,
ul {
    margin: 0;
    padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: 400
}

ul {
    list-style: none
}

button,
input,
select,
textarea {
    margin: 0
}

html {
    box-sizing: border-box
}

*,
::after,
::before {
    box-sizing: border-box
}

img,
video {
    height: auto;
    max-width: 100%
}

iframe {
    border: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

td,
th {
    padding: 0
}

td:not([align]),
th:not([align]) {
    text-align: inherit
}

html {
    background-color: hsl(0deg, 0%, 100%);
    font-size: 1rem;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    min-width: 300px;
    overflow-x: hidden;
    overflow-y: scroll;
    text-rendering: optimizeLegibility;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%
}

article,
aside,
figure,
footer,
header,
hgroup,
section {
    display: block
}

body {
    color: #333;
    font-size: 1em;
    font-weight: 400;
    line-height: 1.5
}

a {
    cursor: pointer;
    text-decoration: none
}

a strong {
    color: currentColor
}

hr {
    background-color: hsl(0deg, 0%, 86%);
    border: none;
    display: block;
    height: 1px;
    margin: 1.5rem 0
}

img {
    height: auto;
    max-width: 100%
}

input[type=checkbox],
input[type=radio] {
    vertical-align: baseline
}

small {
    font-size: .875em
}

span {
    font-style: inherit;
    font-weight: inherit
}

strong {
    font-weight: 700
}

fieldset {
    border: none
}

table td,
table th {
    vertical-align: top
}

table td:not([align]),
table th:not([align]) {
    text-align: inherit
}

.navbar-burger {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: 0 0;
    border: none;
    cursor: pointer;
    display: block;
    height: 3.25rem;
    position: relative;
    width: 3.25rem;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: 0 0;
    border: none;
    color: currentColor;
    font-family: inherit;
    font-size: 1em;
    margin: 0;
    padding: 0
}

.navbar-burger span {
    background-color: currentColor;
    display: block;
    height: 1px;
    left: calc(50% - 8px);
    position: absolute;
    transform-origin: center;
    transition-duration: 86ms;
    transition-property: background-color, opacity, transform;
    transition-timing-function: ease-out;
    width: 16px
}

.navbar-burger span:nth-child(1) {
    top: calc(50% - 6px)
}

.navbar-burger span:nth-child(2) {
    top: calc(50% - 1px)
}

.navbar-burger span:nth-child(3) {
    top: calc(50% + 4px)
}

.navbar-burger:hover {
    background-color: rgba(0, 0, 0, .05)
}

.navbar-burger.is-active span:nth-child(1) {
    transform: translateY(5px) rotate(45deg)
}

.navbar-burger.is-active span:nth-child(2) {
    opacity: 0
}

.navbar-burger.is-active span:nth-child(3) {
    transform: translateY(-5px) rotate(-45deg)
}

.navbar {
    position: relative
}

.navbar>.container {
    align-items: stretch;
    display: flex;
    width: 100%
}

.navbar-brand,
.navbar-tabs {
    align-items: stretch;
    display: flex;
    flex-shrink: 0
}

.navbar-brand a.navbar-item:focus,
.navbar-brand a.navbar-item:hover {
    background-color: transparent
}

.navbar-menu {
    display: none
}

.navbar-item,
.navbar-link {
    display: block;
    line-height: 1.5;
    padding: .5rem .75rem;
    position: relative
}

.navbar-item .icon:only-child,
.navbar-link .icon:only-child {
    margin-left: -.25rem;
    margin-right: -.25rem
}

.navbar-item {
    flex-grow: 0;
    flex-shrink: 0
}

.navbar-item.has-dropdown {
    padding: 0
}

.navbar-item.is-expanded {
    flex-grow: 1;
    flex-shrink: 1
}

.navbar-content {
    flex-grow: 1;
    flex-shrink: 1
}

.navbar-dropdown {
    font-size: .875rem;
    padding-bottom: .5rem;
    padding-top: .5rem
}

.navbar-dropdown .navbar-item {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

@media screen and (max-width:1023px) {
    .navbar>.container {
        display: block
    }
    .navbar-brand .navbar-item,
    .navbar-tabs .navbar-item {
        align-items: center;
        display: flex
    }
    .navbar-link::after {
        display: none
    }
    .navbar-menu {
        padding: .5rem 0
    }
    .navbar-menu.is-active {
        display: block
    }
}

@media screen and (min-width:1024px) {
    .navbar,
    .navbar-end,
    .navbar-menu,
    .navbar-start {
        align-items: stretch;
        display: flex
    }
    .navbar-item,
    .navbar-link {
        align-items: center;
        display: flex
    }
    .navbar-item.has-dropdown {
        align-items: stretch
    }
    .navbar-item.has-dropdown-up .navbar-link::after {
        transform: rotate(135deg) translate(.25em, -.25em)
    }
    .navbar-item.has-dropdown-up .navbar-dropdown {
        border-top: none;
        bottom: 100%;
        top: auto
    }
    .navbar-item.is-active .navbar-dropdown,
    .navbar-item.is-hoverable:focus .navbar-dropdown,
    .navbar-item.is-hoverable:focus-within .navbar-dropdown,
    .navbar-item.is-hoverable:hover .navbar-dropdown {
        display: block
    }
    .navbar-item.is-active .navbar-dropdown.is-boxed,
    .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,
    .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,
    .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed,
    .navbar.is-spaced .navbar-item.is-active .navbar-dropdown,
    .navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown,
    .navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown,
    .navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0)
    }
    .navbar-menu {
        flex-grow: 1;
        flex-shrink: 0
    }
    .navbar-start {
        justify-content: flex-start
    }
    .navbar-end {
        justify-content: flex-end
    }
    .navbar-dropdown {
        display: none;
        font-size: .875rem;
        min-width: 100%;
        position: absolute;
        left: 0;
        top: 100%;
        z-index: 9
    }
    .navbar-dropdown .navbar-item {
        padding: .375rem 1rem;
        white-space: nowrap
    }
    .navbar-dropdown.is-right {
        left: auto;
        right: 0
    }
    .navbar-divider {
        display: block
    }
}

.breadcrumb {
    white-space: nowrap
}

.breadcrumb a {
    align-items: center;
    display: flex;
    justify-content: center
}

.breadcrumb li {
    align-items: center;
    display: flex
}

.breadcrumb li.is-active a {
    cursor: default;
    pointer-events: none
}

.breadcrumb li+li::before {
    color: #333;
    content: "/"
}

.breadcrumb ol,
.breadcrumb ul {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start
}

.breadcrumb ul {
    list-style-type: disc
}

.breadcrumb ol {
    list-style-type: decimal
}

.breadcrumb.is-centered ol,
.breadcrumb.is-centered ul {
    justify-content: center
}

.breadcrumb.is-right ol,
.breadcrumb.is-right ul {
    justify-content: flex-end
}

.breadcrumb.has-arrow-separator li+li::before {
    content: "→"
}

.breadcrumb.has-bullet-separator li+li::before {
    content: "•"
}

.breadcrumb.has-dot-separator li+li::before {
    content: "·"
}

.breadcrumb.has-succeeds-separator li+li::before {
    content: "≻"
}

.table {
    background-color: transparent;
    color: #333
}

.table td,
.table th {
    border: 1px solid #f5f5f5;
    border-width: 0 0 1px;
    padding: .5em .75em;
    vertical-align: top
}

.table th {
    color: #333
}

.table th:not([align]) {
    text-align: left
}

.table thead {
    background-color: transparent
}

.table thead td,
.table thead th {
    border-width: 0 0 2px;
    color: #333
}

.table tfoot {
    background-color: transparent
}

.table tfoot td,
.table tfoot th {
    border-width: 2px 0 0;
    color: #333
}

.table tbody {
    background-color: transparent
}

.table tbody tr:last-child td,
.table tbody tr:last-child th {
    border-bottom-width: 0
}

.table.is-bordered td,
.table.is-bordered th {
    border-width: 1px
}

.table.is-bordered tr:last-child td,
.table.is-bordered tr:last-child th {
    border-bottom-width: 1px
}

.table.is-fullwidth {
    width: 100%
}

.table-container {
    -webkit-overflow-scrolling: touch;
    overflow: auto;
    overflow-y: hidden;
    max-width: 100%
}

.pagination,
.pagination-list {
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: center
}

.pagination-ellipsis,
.pagination-link,
.pagination-next,
.pagination-previous {
    -moz-appearance: none;
    -webkit-appearance: none;
    align-items: center;
    border: 1px solid transparent;
    border-radius: 4px;
    box-shadow: none;
    display: inline-flex;
    height: 2.5em;
    justify-content: flex-start;
    line-height: 1.5;
    padding-bottom: calc(.5em - 1px);
    padding-left: calc(.75em - 1px);
    padding-right: calc(.75em - 1px);
    padding-top: calc(.5em - 1px);
    position: relative;
    vertical-align: top;
    font-size: 1em;
    justify-content: center;
    margin: .25rem;
    padding-left: .5em;
    padding-right: .5em;
    text-align: center
}

.pagination-ellipsis.is-active,
.pagination-ellipsis.is-focused,
.pagination-ellipsis:active,
.pagination-ellipsis:focus,
.pagination-link.is-active,
.pagination-link.is-focused,
.pagination-link:active,
.pagination-link:focus,
.pagination-next.is-active,
.pagination-next.is-focused,
.pagination-next:active,
.pagination-next:focus,
.pagination-previous.is-active,
.pagination-previous.is-focused,
.pagination-previous:active,
.pagination-previous:focus {
    outline: 0
}

.pagination-ellipsis[disabled],
.pagination-link[disabled],
.pagination-next[disabled],
.pagination-previous[disabled],
fieldset[disabled] .pagination-ellipsis,
fieldset[disabled] .pagination-link,
fieldset[disabled] .pagination-next,
fieldset[disabled] .pagination-previous {
    cursor: not-allowed
}

.pagination-link,
.pagination-next,
.pagination-previous {
    border-color: #f5f5f5;
    color: #333;
    min-width: 2.5em
}

.pagination-link.is-disabled,
.pagination-link[disabled],
.pagination-next.is-disabled,
.pagination-next[disabled],
.pagination-previous.is-disabled,
.pagination-previous[disabled] {
    box-shadow: none;
    opacity: .5
}

.pagination-next,
.pagination-previous {
    padding-left: .75em;
    padding-right: .75em;
    white-space: nowrap
}

.pagination-ellipsis {
    color: hsl(0deg, 0%, 71%);
    pointer-events: none
}

.pagination-list {
    flex-wrap: wrap
}

.pagination-list li {
    list-style: none
}

@media screen and (max-width:767px) {
    .pagination {
        flex-wrap: wrap
    }
    .pagination-next,
    .pagination-previous {
        flex-grow: 1;
        flex-shrink: 1
    }
    .pagination-list li {
        flex-grow: 1;
        flex-shrink: 1
    }
}

@media screen and (min-width:768px),
print {
    .pagination-list {
        flex-grow: 1;
        flex-shrink: 1;
        justify-content: flex-start;
        order: 1
    }
    .pagination-ellipsis,
    .pagination-link,
    .pagination-next,
    .pagination-previous {
        margin-bottom: 0;
        margin-top: 0
    }
    .pagination-link {
        cursor: pointer
    }
    .pagination-link.is-current {
        color: hsl(0deg, 0%, 100%)
    }
    .pagination-previous {
        order: 2
    }
    .pagination-next {
        order: 3
    }
    .pagination {
        justify-content: space-between;
        margin-bottom: 0;
        margin-top: 0
    }
    .pagination.is-centered .pagination-previous {
        order: 1
    }
    .pagination.is-centered .pagination-list {
        justify-content: center;
        order: 2
    }
    .pagination.is-centered .pagination-next {
        order: 3
    }
    .pagination.is-right .pagination-previous {
        order: 1
    }
    .pagination.is-right .pagination-next {
        order: 2
    }
    .pagination.is-right .pagination-list {
        justify-content: flex-end;
        order: 3
    }
}

.modal {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    align-items: center;
    display: none;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    position: fixed;
    z-index: 40
}

.modal.is-active {
    display: flex
}

.modal-background {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    background-color: rgba(10, 10, 10, .86)
}

.modal-card,
.modal-content {
    margin: 0 20px;
    max-height: calc(100vh - 160px);
    overflow: auto;
    position: relative;
    width: 100%
}

@media screen and (min-width:768px) {
    .modal-card,
    .modal-content {
        margin: 0 auto;
        max-height: calc(100vh - 40px);
        width: 640px
    }
}

.modal-close {
    -moz-appearance: none;
    -webkit-appearance: none;
    background-color: rgba(10, 10, 10, .2);
    border: none;
    border-radius: 9999px;
    cursor: pointer;
    pointer-events: auto;
    display: inline-block;
    flex-grow: 0;
    flex-shrink: 0;
    font-size: 0;
    height: 20px;
    max-height: 20px;
    max-width: 20px;
    min-height: 20px;
    min-width: 20px;
    outline: 0;
    position: relative;
    vertical-align: top;
    width: 20px;
    background: 0 0;
    height: 40px;
    position: fixed;
    left: 20px;
    top: 20px;
    width: 40px
}

.modal-close::after,
.modal-close::before {
    background-color: hsl(0deg, 0%, 100%);
    content: "";
    display: block;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
    transform-origin: center center
}

.modal-close::before {
    height: 2px;
    width: 50%
}

.modal-close::after {
    height: 50%;
    width: 2px
}

.modal-close:focus,
.modal-close:hover {
    background-color: rgba(10, 10, 10, .3)
}

.modal-close:active {
    background-color: rgba(10, 10, 10, .4)
}

.modal-close.is-small {
    height: 16px;
    max-height: 16px;
    max-width: 16px;
    min-height: 16px;
    min-width: 16px;
    width: 16px
}

.modal-close.is-medium {
    height: 24px;
    max-height: 24px;
    max-width: 24px;
    min-height: 24px;
    min-width: 24px;
    width: 24px
}

.modal-close.is-large {
    height: 32px;
    max-height: 32px;
    max-width: 32px;
    min-height: 32px;
    min-width: 32px;
    width: 32px
}

.modal-card {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 40px);
    overflow: hidden;
    -ms-overflow-y: visible
}

.modal-card-foot,
.modal-card-head {
    align-items: center;
    background-color: hsl(0deg, 0%, 100%);
    display: flex;
    flex-shrink: 0;
    justify-content: flex-start;
    padding: 20px;
    position: relative
}

.modal-card-head {
    border-bottom: 1px solid #f5f5f5;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px
}

.modal-card-title {
    color: #333;
    flex-grow: 1;
    flex-shrink: 0
}

.modal-card-foot {
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    border-top: 1px solid #f5f5f5
}

.modal-card-body {
    -webkit-overflow-scrolling: touch;
    background-color: hsl(0deg, 0%, 100%);
    flex-grow: 1;
    flex-shrink: 1;
    overflow: auto;
    padding: 20px
}

#wrapper {
    display: flex;
    position: relative;
    flex-direction: column;
    min-height: 100vh
}

@media screen and (min-width:768px),
print {
    #wrapper {
        padding-top: 0 !important
    }
}

#wrapper:not(.action-modal-active) {
    padding-top: 0 !important
}

figure a {
    display: inline-block;
    width: auto;
    height: auto
}

figure.image {
    margin-bottom: 1rem
}

figure.image img {
    display: block
}

@media screen and (min-width:768px),
print {
    figure.image.image-style-align-left {
        float: left;
        margin-right: 20px
    }
}

@media screen and (min-width:768px),
print {
    figure.image.image-style-align-right {
        float: right;
        margin-left: 20px
    }
}

figure.image.image-style-block-align-left img {
    margin-left: 0;
    margin-right: auto
}

figure.image.image-style-block-align-right img {
    margin-left: auto;
    margin-right: 0
}

figure.image.image-style-align-center img {
    margin-left: auto;
    margin-right: auto
}

button {
    border: none;
    margin: 0;
    padding: 0;
    width: auto;
    overflow: visible;
    background: 0 0;
    -webkit-appearance: none
}

button:focus:not(:focus-visible) {
    outline: 0
}

.responsive-img {
    position: relative;
    width: 100%;
    padding-top: 56.25%
}

.responsive-img img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    width: 100%;
    height: 100%
}

.responsive-img.has-zoom {
    overflow: hidden
}

.responsive-img.has-zoom:hover img {
    transform: scale(1.03) translate(-50%, -50%)
}

.responsive-img.has-zoom img {
    transform: scale(1) translate(-50%, -50%);
    transition: transform .35s ease-out;
    transform-origin: left center
}

a:hover .responsive-img.has-zoom img {
    transform: scale(1.03) translate(-50%, -50%)
}

.responsive-bg-img {
    display: flex;
    position: relative;
    width: 100%
}

.responsive-bg-img a {
    display: block
}

.responsive-bg-img.has-zoom div {
    transform: scale(1) translateZ(0);
    transition: transform .35s ease-out
}

a:hover .responsive-bg-img.has-zoom div {
    transform: scale(1.05) translateZ(0)
}

.responsive-bg-img div {
    width: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.section .responsive-bg-img div {
    padding-top: 75%
}

#search-close,
.close-button,
.close-modal {
    position: absolute;
    right: 20px;
    top: 20px;
    display: block;
    width: 30px;
    height: 30px;
    transition: all .3s;
    z-index: 9;
    background-color: transparent;
    border: 0;
    outline: 0
}

#search-close:before,
.close-button:before,
.close-modal:before {
    display: none
}

@media screen and (max-width:1023px) {
    #search-close,
    .close-button,
    .close-modal {
        transform: scale(.6)
    }
}

#search-close span,
.close-button span,
.close-modal span {
    background-color: hsl(0deg, 0%, 100%);
    display: block;
    height: 2px;
    left: calc(50% - 16px);
    position: absolute;
    transform-origin: center;
    width: 30px
}

#search-close span:nth-child(1),
.close-button span:nth-child(1),
.close-modal span:nth-child(1) {
    top: calc(50% - 14px);
    transform: translateY(8px) rotate(45deg)
}

#search-close span:nth-child(2),
.close-button span:nth-child(2),
.close-modal span:nth-child(2) {
    top: calc(50% + 5px);
    transform: translateY(-11px) rotate(-45deg)
}

#search-close span:nth-child(3),
.close-button span:nth-child(3),
.close-modal span:nth-child(3) {
    display: none
}

body.animated-wowo-control .modal .wowo {
    visibility: visible
}

body.animated-wowo-control .modal .wowo.animated {
    animation: none !important
}

body.animated-wowo-control .wowo {
    visibility: hidden
}

body.animated-wowo-control .wowo.animated {
    animation-duration: .8s;
    visibility: visible;
    animation-fill-mode: both
}

.fadeInUp.animated {
    animation-name: fadeInUp
}

.fadeIn.animated {
    animation-name: fadeIn
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 100px, 0)
    }
    to {
        transform: translate3d(0, 0, 0);
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

.icon-search {
    font-weight: 600;
    font-size: 1.0625rem;
    padding: 10px
}

@media screen and (max-width:1023px) {
    .icon-search {
        font-size: 1rem
    }
}

#search-box ::placeholder {
    color: rgba(255, 255, 255, .5) !important
}

#search-box input.input {
    background-color: transparent;
    outline: 0;
    border: 0 !important;
    box-shadow: none;
    text-align: center;
    color: hsl(0deg, 0%, 100%)
}

#search-box .search-box-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center
}

#search-box .search-box-inner p {
    font-size: .875rem;
    line-height: 1.5;
    margin-top: 15px;
    color: hsl(0deg, 0%, 100%)
}

#search-box form {
    position: relative
}

#search-box form:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 1px;
    background-color: hsl(0deg, 0%, 100%);
    left: 50%;
    width: 0;
    transition: all 1s
}

#search-box form:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 1px;
    background-color: hsl(0deg, 0%, 100%);
    right: 50%;
    width: 0;
    transition: all 1s
}

#search-box.show-it form:after,
#search-box.show-it form:before {
    width: 50%
}

.search-inner {
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    width: 100%;
    bottom: 100%;
    padding: 15px 10px;
    background-color: #1d2eb7;
    display: none;
    min-width: 320px;
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    height: 100%;
    z-index: 100
}

.search-inner input.input {
    width: 100%;
    height: 36px
}

@media screen and (max-width:560px) {
    .search-inner input.input {
        width: 300px
    }
    .search-inner input.input::placeholder {
        font-size: .75rem
    }
}

.slick-dots-wrapper {
    position: absolute;
    width: 100%;
    right: 0;
    padding: 20px 0
}

.slick-dots-wrapper ul.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 220px;
    position: relative;
    margin: auto
}

.slick-dots-wrapper ul.slick-dots li {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    margin: 0;
    height: 6px
}

.slick-dots-wrapper ul.slick-dots li button {
    border: 0;
    font-size: 0;
    background-color: #d6eaf7;
    padding: 0;
    padding: 0;
    text-align: center;
    transition: height .15s, background .15s;
    cursor: pointer;
    outline: 0;
    display: block;
    width: 100%;
    height: 3px;
    position: relative
}

.slick-dots-wrapper ul.slick-dots li button:before {
    display: none
}

.slick-dots-wrapper ul.slick-dots li button:after {
    content: "";
    display: block;
    background-color: transparent;
    width: 100%;
    height: 15px;
    position: absolute;
    top: -7px
}

.slick-dots-wrapper ul.slick-dots li:hover button {
    height: 6px
}

.slick-dots-wrapper ul.slick-dots li.slick-active button {
    height: 6px;
    background-color: #01afea
}

.banner.page-banner .container h1,
.banner.page-banner .container h2 {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 700
}

.banner.page-banner .container h1,
.banner.page-banner .container h2 {
    text-transform: uppercase
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-style: normal;
    font-weight: 700
}

.h1 b,
.h1 strong,
.h2 b,
.h2 strong,
.h3 b,
.h3 strong,
.h4 b,
.h4 strong,
.h5 b,
.h5 strong,
.h6 b,
.h6 strong,
h1 b,
h1 strong,
h2 b,
h2 strong,
h3 b,
h3 strong,
h4 b,
h4 strong,
h5 b,
h5 strong,
h6 b,
h6 strong {
    font-weight: 600
}

.is-h1,
h1 {
    font-size: 2.625rem;
    line-height: 3.5rem
}

@media screen and (min-width:1024px) {
    .is-h1,
    h1 {
        font-size: 3rem;
        line-height: 3.75rem
    }
}

.is-h2,
h2 {
    font-size: 2.25rem;
    line-height: 3rem;
    margin-bottom: .5714em
}

@media screen and (min-width:1024px) {
    .is-h2,
    h2 {
        font-size: 2.625rem;
        line-height: 3.5rem
    }
}

.is-h2:not(:first-child),
h2:not(:first-child) {
    margin-top: 1.1428em
}

.is-h3,
h3 {
    font-size: 1.75rem;
    line-height: 2.625rem;
    margin-bottom: .6666em
}

@media screen and (min-width:1024px) {
    .is-h3,
    h3 {
        font-size: 2.25rem;
        line-height: 3rem
    }
}

.is-h3:not(:first-child),
h3:not(:first-child) {
    margin-top: 1.3333em
}

.is-h4,
h4 {
    font-size: 1.5rem;
    line-height: 2.25rem;
    margin-bottom: .8em
}

@media screen and (min-width:1024px) {
    .is-h4,
    h4 {
        font-size: 1.75rem;
        line-height: 2.625rem
    }
}

.is-h5,
h5 {
    font-size: 1.25rem;
    line-height: 1.875rem;
    margin-bottom: .8888em
}

@media screen and (min-width:1024px) {
    .is-h5,
    h5 {
        font-size: 1.5rem;
        line-height: 2.25rem
    }
}

.is-h6,
h6 {
    font-size: 1.125rem;
    line-height: 1.75rem;
    margin-bottom: 1em
}

@media screen and (min-width:1024px) {
    .is-h6,
    h6 {
        font-size: 1.25rem;
        line-height: 1.875rem
    }
}

body,
button,
html,
input,
select,
textarea {
    font-family: "Josefin Sans", sans-serif
}

body,
html {
    font-size: 1rem;
    color: #030983
}

blockquote:not(:last-child),
dl:not(:last-child),
p:not(:last-child),
pre:not(:last-child) {
    margin-bottom: 1em
}

p {
    color: #030983;
    font-family: Aime, serif;
    font-style: normal;
    font-size: 1.125rem;
    line-height: 1.75rem
}

p a {
    color: #01afea;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    transition: color .3s
}

p a:hover {
    color: #1d2eb7
}

p img {
    max-width: 50% !important
}

p big,
p.is-large {
    color: #030983;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.875rem
}

@media screen and (min-width:768px),
print {
    p big,
    p.is-large {
        font-size: 1.375rem;
        line-height: 2rem
    }
}

@media screen and (min-width:1024px) {
    p big,
    p.is-large {
        font-size: 1.5rem;
        line-height: 2.125rem
    }
}

p.is-lead {
    margin-top: 0;
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.25rem
}

ol,
ul {
    padding-left: 2rem;
    -webkit-margin-start: 2em;
    margin-inline-start: 2em
}

.content ol,
.content ul {
    margin-bottom: 2em
}

ol:not(:first-child),
ul:not(:first-child) {
    margin-top: 1em
}

ol li,
ul li {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem;
    margin-bottom: 1rem
}

ol li::marker,
ul li::marker {
    color: #01afea;
    font-weight: 400
}

ol li::marker {
    color: #030983
}

ul {
    list-style-type: disc
}

blockquote {
    padding-left: 32px;
    border-left: 2px solid #01afea;
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.25rem
}

blockquote p {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.25rem
}

.list-reset {
    padding: 0;
    margin: 0;
    list-style-type: none
}

.list-reset>li {
    margin-bottom: 0
}

.list-reset>li a {
    border-bottom: none
}

.list-reset>li a:hover {
    border-bottom: none
}

a {
    color: #1d2eb7
}

a:hover {
    color: #092a6d
}

:root {
    --alert-height: 50px
}

section.social-block {
    margin-top: 100px;
    background-color: #d6e9f8
}

section.social-block .above-feed {
    display: flex;
    flex-direction: column;
    padding: 57px 34px 40px
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed {
        flex-direction: row;
        padding: 129px 0 75px
    }
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed .c-heading {
        flex: 1
    }
}

section.social-block .above-feed .c-heading h2 {
    font-family: Aime, serif;
    font-weight: 600;
    font-size: 2.0625rem;
    line-height: 2.5625rem;
    text-align: center;
    color: #1d2eb7;
    margin-bottom: 0
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed .c-heading h2 {
        text-align: left;
        font-size: 2.75rem;
        line-height: 3.5rem
    }
}

section.social-block .above-feed .social-links {
    margin-top: 27px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed .social-links {
        margin-top: 0;
        flex-direction: row;
        justify-content: flex-end;
        flex: 2
    }
}

section.social-block .above-feed .social-links .social-link {
    font-family: Aime, serif;
    font-weight: 600;
    font-size: 1.1875rem;
    line-height: .8;
    color: #1d2eb7;
    text-align: center;
    display: flex;
    position: relative;
    margin-left: 31px;
    padding: 0
}

section.social-block .above-feed .social-links .social-link:after {
    height: 1px
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed .social-links .social-link:not(:last-child) {
        margin-right: 36px
    }
}

section.social-block .above-feed .social-links .social-link:not(:first-child) {
    margin-top: 14px
}

@media screen and (min-width:1024px) {
    section.social-block .above-feed .social-links .social-link:not(:first-child) {
        margin-top: 0
    }
}

section.social-block .above-feed .social-links .social-link:hover .social-icon {
    transform: translateY(calc(-25% - 5px))
}

section.social-block .social-icon {
    width: 21px;
    height: 21px;
    background-color: #092a6d;
    border-radius: 100%;
    display: block;
    position: absolute;
    left: -31px;
    transform: translate(0, -25%);
    transition: transform .2s
}

section.social-block .social-icon svg {
    width: 13px;
    height: 13px;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.social-block .social-icon svg path {
    fill: hsl(0deg, 0%, 100%)
}

section.social-block .social-feed {
    margin-bottom: 0;
    padding-bottom: 50px
}

@media screen and (min-width:1024px) {
    section.social-block .social-feed {
        padding-bottom: 75px
    }
}

section.social-block .social-feed .social-wrapper {
    position: relative;
    z-index: 1
}

section.social-block .social-feed .slick-list {
    overflow: visible
}

section.social-block .social-feed .social-tile {
    height: 280px;
    width: 286px;
    position: relative;
    margin: 0 5px
}

section.social-block .social-feed .social-tile:hover .content {
    opacity: 1
}

section.social-block .social-feed .social-tile:hover .content span {
    border-bottom: 1px solid hsl(0deg, 0%, 100%)
}

section.social-block .social-feed .social-tile img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover
}

section.social-block .social-feed .social-tile .social-icon {
    bottom: 12px;
    right: 12px;
    left: auto;
    transform: none
}

section.social-block .social-feed .social-tile .content {
    position: absolute;
    background-color: rgba(29, 46, 183, .95);
    padding: 32px 20px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .4s
}

section.social-block .social-feed .social-tile .content p {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5rem;
    color: hsl(0deg, 0%, 100%)
}

section.social-block .social-feed .social-tile .content span {
    font-family: "Josefin Sans", sans-serif;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.125rem;
    letter-spacing: .0625rem;
    color: hsl(0deg, 0%, 100%)
}

section.content-block.home-intro-text .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 52px
}

section.content-block.home-intro-text .container h2 {
    max-width: 936px;
    text-align: center;
    margin-bottom: 0;
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 3.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 4.0625rem
}

@media screen and (max-width:1023px) {
    section.content-block.home-intro-text .container h2 {
        max-width: 620px;
        font-size: 2.625rem;
        line-height: 3.5rem
    }
}

@media screen and (max-width:767px) {
    section.content-block.home-intro-text .container h2 {
        max-width: 300px;
        font-size: 1.5rem;
        line-height: 2.25rem
    }
}

section.content-block.home-accordion-circle {
    padding-top: 130px
}

section.content-block.home-accordion-circle .container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 800px;
    gap: 68px
}

@media screen and (max-width:1023px) {
    section.content-block.home-accordion-circle .container {
        flex-direction: column-reverse
    }
}

section.content-block.home-accordion-circle .container .accordion-block-title {
    background: #1E7B3C;
    border-radius: 100%;
    width: 340px;
    height: 340px;
    position: relative;
    position: absolute;
    top: -10%;
    left: 450px;
    z-index: 5
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-block-title {
        width: 250px;
        height: 250px
    }
}

section.content-block.home-accordion-circle .container .accordion-block-title span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: left;
    font-family: Aime, serif;
    font-size: 5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 4.125rem;
    letter-spacing: -.2rem
}

@media screen and (max-width:1023px) {
    section.content-block.home-accordion-circle .container .accordion-block-title {
        left: -5%
    }
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-block-title {
        left: 50%;
        transform: translateX(-50%)
    }
}

section.content-block.home-accordion-circle .container .accordion-block-title span {
    font-size: 3.75rem;
    text-align: center;
    line-height: 3.75rem;
    letter-spacing: -.125rem
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-block-title span {
        font-size: 2.75rem;
        line-height: 2.75rem
    }
}

section.content-block.home-accordion-circle .container .accordion-items {
    height: 100%;
    flex-basis: 50%
}

@media screen and (max-width:1023px) {
    section.content-block.home-accordion-circle .container .accordion-items {
        width: 100%
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item {
    border-top: 1px solid #d6e9f8;
    padding: 36px 10px 16px
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item {
        padding: 26px 10px 6px
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-toggle-content {
    transition: max-height .3s, opacity .3s;
    opacity: 0;
    overflow: hidden;
    pointer-events: none;
    padding-bottom: 20px
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-toggle-content .accordion-toggle-inner {
    padding-top: 26px
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item.is-active .accordion-toggle-content {
    opacity: 1;
    pointer-events: initial
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item.is-active .accordion-heading .accordion-icon {
    transform: translateY(-50%) rotate(180deg)
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item.is-active .accordion-heading .accordion-icon span:first-child {
    opacity: 0
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-heading {
    position: relative
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-heading .accordion-icon {
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition: transform .6s;
    width: 18px;
    height: 18px;
    pointer-events: none
}

@media screen and (min-width:1024px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-heading .accordion-icon {
        display: none
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-heading .accordion-icon span {
    width: 100%;
    height: 1px;
    background: #1E7B3C;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-heading .accordion-icon span:first-child {
    transition: opacity .6s;
    transform: translate(-50%) rotate(90deg)
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item h3.accordion-title {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.875rem;
    margin-bottom: 0;
    transition: color .3s, padding .3s;
    cursor: pointer;
    padding-left: 0
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item h3.accordion-title {
        font-size: 1.6875rem;
        line-height: 1.875rem
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item h3.accordion-title:hover {
    color: #2de968;
    padding-left: 7px
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem;
    max-width: 80%
}

@media screen and (min-width:1024px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content {
        max-width: 440px
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content p {
    color: #1E7B3C
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content p:last-child {
    margin-bottom: 0
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content p:last-child {
        margin-top: 10px
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content i {
    color: #1E7B3C;
    font-family: "Josefin Sans", sans-serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.625rem;
    text-transform: uppercase
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-items .accordion-item .accordion-content i {
        font-size: 1.125rem;
        line-height: 1.59375rem
    }
}

section.content-block.home-accordion-circle .container .accordion-items .accordion-item a.btn {
    margin-top: 28px
}

section.content-block.home-accordion-circle .container .accordion-images {
    position: relative;
    flex: 0 0 50%
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner {
    width: 815px;
    height: 815px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 100%
}

@media screen and (max-width:1023px) {
    section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner {
        width: 615px;
        height: 615px;
        position: relative;
        transform: none
    }
}

@media screen and (max-width:767px) {
    section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner {
        width: calc(100vw + 50px);
        height: calc(100vw + 50px)
    }
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner:before {
    content: "";
    position: absolute;
    width: calc(100% + 30px);
    height: calc(100% + 30px);
    border: 1px solid #d6e9f8;
    border-radius: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #d6e9f8;
    border-radius: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner .accordion-image {
    position: absolute;
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    overflow: hidden;
    opacity: 0;
    transition: opacity .3s
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner .accordion-image.is-active {
    opacity: 1
}

section.content-block.home-accordion-circle .container .accordion-images .accordion-images-inner .accordion-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

@keyframes grow-line {
    0% {
        width: 0%
    }
    100% {
        width: 100%
    }
}

.home-horizontal-journey {
    background-color: #1E7B3C
}

.home-horizontal-journey .horizontal-container div.horizontal-inner {
    background: linear-gradient(180deg, #2c8347 0, #1E7B3C 100%);
    white-space: nowrap;
    overflow-x: hidden;
    display: flex;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    flex-direction: column;
    height: auto
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner {
        white-space: normal;
        position: relative;
        top: auto
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner {
        height: 100vh;
        flex-direction: row;
        overflow: hidden
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner {
        padding: 0
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper {
    display: flex;
    position: relative;
    flex-direction: column;
    height: auto;
    gap: 100px;
    margin-top: 50px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper {
        padding: 0;
        margin-top: 0;
        flex-direction: row;
        align-items: center;
        gap: 13vh
    }
}

@media screen and (min-width:1024px) and (min-height:900px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper {
        gap: 130px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    width: 100%;
    height: 100%
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper:after {
        width: 100%;
        height: 100%;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        background-image: url(../images/big-line2.svg);
        background-position: center center;
        background-size: 60%;
        background-repeat: no-repeat
    }
}

@media screen and (min-width:1024px) and (min-height:900px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper:after {
        width: 2093px;
        height: 554px;
        left: 680px;
        background-position: left center;
        background-size: 2093px 554px
    }
    @supports (animation-timeline:scroll()) {
        .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper:after {
            animation: grow-line cubic-bezier(.4, 0, .08, 1.28) both;
            animation-timeline: scroll(root block);
            animation-range-start: 2%
        }
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 100px 10px 100px;
    gap: 40px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner {
        padding: 0 200px 0 0;
        gap: 50px;
        flex-direction: row;
        align-items: center
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .journey-bg {
    position: absolute;
    top: -100px;
    left: -20%;
    z-index: 1;
    width: 100%;
    z-index: 1;
    opacity: .1;
    pointer-events: none
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .journey-bg {
        top: 50%;
        transform: translateY(-50%);
        left: -500px;
        width: auto;
        height: 110%
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-preschool:before {
        content: "";
        position: absolute;
        right: 100%;
        top: 50%;
        transform: translateY(-50%);
        width: 100px;
        height: 2px;
        background-image: url(../images/dashes.svg);
        background-position: center center;
        background-repeat: repeat-x
    }
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-preschool .school-wrap .circle-info {
        transform: translateX(-40px)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-junior {
    gap: 100px
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-junior {
        flex-direction: column;
        gap: 50px
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-junior {
        gap: 10vh
    }
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-junior .school-wrap .circle-info {
        transform: none
    }
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-junior .school-wrap .circle-image {
        transform: translateX(-80px)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-middle {
    overflow-y: visible;
    padding-left: 0;
    display: none
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-middle {
        display: flex;
        overflow-y: hidden;
        padding-left: 290px
    }
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-middle .double-school-wrap .circle-image-wrapper:nth-child(2) {
        order: -1
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-senior .school-wrap .circle-info {
        transform: translateX(40px)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap:hover .circle-image img {
    transform: translate(-50%, -50%) scale(1.1)
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap {
    position: relative;
    z-index: 2
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap:hover .circle-info span.btn,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap:hover .circle-info span.btn {
    opacity: 1 !important
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-image {
    position: relative;
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    border-radius: 100%;
    overflow: hidden;
    max-width: 340px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-image {
        width: auto;
        height: clamp(200px, 450px, 48vh);
        max-width: 450px
    }
}

@media screen and (min-width:1024px) and (min-height:900px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-image {
        height: 450px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image img,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transform: translate(-50%, -50%) scale(1);
    transition: transform .3s ease
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    max-width: 450px;
    margin-top: 20px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info {
        background-color: #fff;
        margin-top: 0;
        border-radius: 100%;
        transform: translateY(-20%);
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        width: auto;
        height: clamp(200px, 324px, 38vh);
        gap: 0
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info h3,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info h3 {
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 2.625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.1;
    margin-top: 0;
    margin-bottom: 5px;
    white-space: normal
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info h3,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info h3 {
        color: #1E7B3C;
        width: -webkit-min-content;
        width: min-content;
        font-size: clamp(1.25rem, 3.25rem, 6vh)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info h4,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info h4 {
    color: #fff;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.375rem;
    text-transform: uppercase;
    margin-top: 10px;
    margin-bottom: 10px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info h4,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info h4 {
        color: #1E7B3C
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.address,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.address {
    color: #fff;
    font-family: "Josefin Sans", sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.375rem;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    margin-bottom: 8px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.address,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.address {
        color: #01afea;
        font-size: clamp(.5rem, .6875rem, 1.4vh)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.misc-info,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.misc-info {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(2px, 12px, 1.1vh)
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.misc-info.misc-alt,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.misc-info.misc-alt {
    flex-direction: column;
    gap: 4px
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.misc-info span,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.misc-info span {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.1
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info div.misc-info span,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info div.misc-info span {
        color: #1E7B3C;
        font-size: clamp(.5rem, 1rem, 2vh)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info span.btn,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info span.btn {
    opacity: 1;
    transition: opacity .3s;
    margin-top: 20px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info span.btn,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info span.btn {
        position: absolute;
        margin-top: 0;
        opacity: 0;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info span.btn:hover,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap .circle-info span.btn:hover {
    background-color: #01afea
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 30px;
    padding: 100px 0;
    isolation: isolate
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap {
        gap: 10vh;
        padding: 0
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image-wrapper {
    position: relative;
    width: 100%;
    display: grid;
    place-items: center;
    max-width: 450px;
    margin: 0 auto
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-image-wrapper {
        display: block
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label {
    position: absolute;
    right: 0;
    background: #d6e9f8;
    border-radius: 100%;
    aspect-ratio: 1;
    width: 127px;
    height: 127px;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 3.125rem;
    z-index: 2
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label {
        left: 88%;
        right: auto;
        width: auto;
        height: clamp(80px, 127px, 33%)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label.label-girls {
    bottom: 5%
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label.label-girls {
        top: auto;
        bottom: 5%
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label.label-boys {
    top: 5%
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-label.label-boys {
        bottom: auto;
        top: 5%
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info.floating-circle {
    position: absolute;
    top: 50%;
    transform: translate(-100%, -50%)
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info.floating-circle {
        position: relative;
        transform: none
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .double-school-wrap .circle-info.floating-circle .btn {
        bottom: -20px;
        z-index: 9
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap {
    display: flex;
    align-items: center;
    justify-content: center
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.boys-school,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.girls-school,
.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.senior-school {
    flex-direction: row-reverse
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.boys-school,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.girls-school,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section .school-wrap.senior-school {
        flex-direction: column
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro {
    position: relative;
    padding: 0 20px
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro {
        min-width: auto;
        width: 100%
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro {
        padding: 0 0 0 240px
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .section-inner {
        min-width: 600px;
        transform: translateY(60px)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro h2 {
    color: #fff;
    font-family: Aime, serif;
    font-style: normal;
    font-weight: 700;
    width: 100%;
    max-width: 596px;
    white-space: initial;
    font-size: 3.75rem;
    line-height: 3.75rem;
    letter-spacing: -.125rem;
    margin-bottom: 60px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro h2 {
        font-size: 6.25rem;
        line-height: 5.625rem;
        letter-spacing: -.25rem;
        margin-bottom: 60px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .intro-text {
    display: flex;
    justify-content: center
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .intro-text p {
    white-space: initial;
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.375rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.125rem
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .intro-text p {
        width: 350px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .journey-stage-list {
    list-style: none;
    margin: 24px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .journey-stage-list li {
    color: #fff;
    font-family: "Josefin Sans", sans-serif;
    font-size: .95rem;
    font-weight: 600;
    letter-spacing: .01em;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 999px;
    padding: 8px 14px;
    width: fit-content;
    line-height: 1.3
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .section-inner {
        max-width: 740px
    }
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro h2 {
        font-size: clamp(3.2rem, 5.6vw, 5.4rem);
        line-height: .95;
        margin-bottom: 38px
    }
    .home-horizontal-journey .horizontal-container div.horizontal-inner .hori-inner-inner .horizontal-section.section-intro .intro-text p {
        width: 100%;
        max-width: 460px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey {
    gap: 72px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey {
        gap: clamp(48px, 6vw, 110px);
        align-items: flex-end;
        padding-right: 220px
    }
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .horizontal-section.section-stage:nth-child(even) {
        transform: translateY(65px)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card.stage-reverse {
    flex-direction: row-reverse
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card,
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card.stage-reverse {
        flex-direction: column
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-image {
    max-width: 280px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-image {
        height: clamp(170px, 240px, 24vh);
        max-width: 240px
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info {
    gap: 8px;
    max-width: 320px;
    text-align: center
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info {
        border-radius: 42px;
        padding: 24px 26px;
        height: auto;
        min-height: 230px;
        aspect-ratio: auto;
        transform: translateY(0);
        width: min(320px, 25vw)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info h3 {
    width: auto;
    margin-bottom: 2px;
    font-size: clamp(1.4rem, 2.5rem, 3.4vh)
}

@media screen and (max-width:1023px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info h3 {
        font-size: 2.2rem
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info h4 {
    margin: 0 0 6px;
    font-size: .95rem;
    letter-spacing: .08em
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info h4 {
        font-size: .85rem;
        color: #01afea
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info div.misc-info {
    flex-wrap: wrap;
    gap: 6px;
    max-width: 260px
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info div.misc-info svg {
    flex: 0 0 auto
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info div.misc-info span {
    text-align: center;
    line-height: 1.25
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info div.misc-info span {
        font-size: clamp(.72rem, .95rem, 1.6vh)
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info span.btn {
    margin-top: 14px
}

@media screen and (min-width:1024px) {
    .home-horizontal-journey .horizontal-container div.horizontal-inner .journey-line-wrapper.is-grade-journey .school-wrap.stage-card .circle-info span.btn {
        position: static;
        opacity: 1;
        transform: none
    }
}

.home-horizontal-journey .horizontal-container div.horizontal-inner .hori-title {
    font-family: Aime, serif;
    font-size: 6.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 5.625rem;
    letter-spacing: -.25rem
}

section.home-circular-icons {
    padding-top: 150px
}

@media screen and (min-width:1024px) {
    section.home-circular-icons {
        padding-top: 0
    }
}

section.home-circular-icons .container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    min-height: 800px;
    gap: 0
}

@media screen and (min-width:1024px) {
    section.home-circular-icons .container {
        gap: 200px;
        flex-direction: row
    }
}

section.home-circular-icons .container .info-wrapper {
    height: 100%;
    flex-basis: 45%;
    position: relative
}

section.home-circular-icons .container .info-wrapper.info-wrapper-carousel {
    display: none;
    width: 100%;
    flex-basis: auto;
    transform: translateY(-75px)
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .info-wrapper.info-wrapper-carousel {
        display: initial
    }
}

section.home-circular-icons .container .info-wrapper.info-wrapper-carousel .slick-arrows-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    padding-top: 24px
}

section.home-circular-icons .container .info-wrapper.info-wrapper-carousel .slide-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:1024px) {
    section.home-circular-icons .container .info-wrapper.info-wrapper-carousel .slide-wrapper .block-icon {
        transform: translateY(-100px)
    }
}

section.home-circular-icons .container .info-wrapper.info-wrapper-carousel .slide-wrapper .info-block {
    margin-top: 44px
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .info-wrapper.info-wrapper-desktop {
        display: none
    }
}

section.home-circular-icons .container .info-wrapper.info-wrapper-desktop .info-block {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -55%);
    opacity: 0;
    pointer-events: none;
    transition: opacity .6s, transform .6s
}

section.home-circular-icons .container .info-wrapper.info-wrapper-desktop .info-block.is-active {
    opacity: 1;
    pointer-events: initial;
    transform: translate(-50%, -50%)
}

section.home-circular-icons .container .info-wrapper .info-block {
    text-align: left;
    width: 100%
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .info-wrapper .info-block {
        text-align: center
    }
}

section.home-circular-icons .container .info-wrapper .info-block h3 {
    font-family: Aime, serif;
    font-size: 6.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 5.625rem;
    letter-spacing: -.25rem;
    color: #1E7B3C
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .info-wrapper .info-block h3 {
        font-size: 3.75rem;
        line-height: 3.75rem
    }
}

section.home-circular-icons .container .info-wrapper .info-block p {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 1.875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.625rem
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .info-wrapper .info-block p {
        font-size: 1.25rem;
        line-height: 1.75rem
    }
}

section.home-circular-icons .container .circle-wrapper {
    position: relative;
    flex: 0 0 55%
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .circle-wrapper {
        width: 100%
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner {
    width: 815px;
    height: 815px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 100%
}

@media screen and (min-width:1024px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner {
        height: auto;
        max-width: 100%;
        aspect-ratio: 1
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner:before {
    content: "";
    position: absolute;
    width: calc(100% + 30px);
    height: calc(100% + 30px);
    border: 1px solid #d6e9f8;
    border-radius: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner {
        position: relative;
        transform: none;
        width: 100%;
        height: 0;
        padding-bottom: 100%
    }
}

@media screen and (max-width:767px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner {
        width: calc(100vw + 50px);
        height: calc(100vw + 50px);
        transform: translateX(-40px)
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .circle-image {
    position: absolute;
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 100%;
    overflow: hidden
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .circle-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title {
    background: #1d2eb7;
    border-radius: 100%;
    width: 340px;
    height: 340px;
    position: relative
}

@media screen and (max-width:767px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title {
        width: 250px;
        height: 250px
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: left;
    font-family: Aime, serif;
    font-size: 5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 4.125rem;
    letter-spacing: -.2rem
}

@media screen and (min-width:768px),
print {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title {
        aspect-ratio: 1;
        width: clamp(200px, 340px, 30%);
        height: auto
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title span {
    line-height: .8;
    font-size: clamp(3.125rem, 4rem, 4vw)
}

@media screen and (max-width:767px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title {
        position: absolute;
        left: 50%;
        transform: translate(-50%, -150px)
    }
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-title span {
        font-size: 3.76531rem;
        font-style: normal;
        font-weight: 700;
        line-height: 3.10638rem
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 16%
}

@media screen and (max-width:1023px) {
    section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons {
        display: none
    }
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons .block-icon:nth-child(1),
section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons .block-icon:nth-child(5) {
    transform: translateX(-100%)
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons .block-icon:nth-child(2) {
    transform: translateY(-25%)
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons .block-icon:nth-child(3) {
    transform: translateX(50%)
}

section.home-circular-icons .container .circle-wrapper .circle-wrapper-inner .block-icons .block-icon:nth-child(4) {
    transform: translateY(25%)
}

section.home-circular-icons .slick-current .block-icon {
    background: #d6e9f8
}

section.home-circular-icons .slick-current .block-icon:before {
    border-color: rgba(29, 46, 183, .15)
}

section.home-circular-icons .block-icon {
    position: relative;
    width: 150px;
    height: 150px;
    background: #fff;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color .3s;
    cursor: pointer;
    container-type: inline-size
}

@media screen and (min-width:1024px) {
    section.home-circular-icons .block-icon {
        width: clamp(150px, 180px, 20%);
        height: auto;
        aspect-ratio: 1
    }
}

section.home-circular-icons .block-icon.is-active,
section.home-circular-icons .block-icon:hover {
    background: #d6e9f8
}

section.home-circular-icons .block-icon.is-active:before,
section.home-circular-icons .block-icon:hover:before {
    border-color: rgba(29, 46, 183, .15)
}

section.home-circular-icons .block-icon:before {
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    transition: border-color .3s
}

section.home-circular-icons .block-icon span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: Aime, serif;
    font-size: clamp(2.25rem, 3.4375rem, 8vw);
    font-style: normal;
    font-weight: 700;
    line-height: 2.18856rem
}

@supports (font-size:1cqi) {
    section.home-circular-icons .block-icon span {
        font-size: clamp(1rem, 3.4375rem, 28cqi)
    }
}

@media screen and (min-width:1024px) {
    section.home-circular-icons .block-icon span {
        font-size: clamp(1.5rem, 3.4375rem, 4vh)
    }
    @supports (font-size:1cqi) {
        section.home-circular-icons .block-icon span {
            font-size: clamp(1rem, 3.4375rem, 28cqi)
        }
    }
}

section.home-circular-icons .block-icon span.width-svg {
    font-size: 0
}

section.home-circular-icons .block-icon span svg {
    max-height: 65px;
    max-width: 65px;
    width: 100%
}

.home-accordion {
    background: rgba(203, 194, 183, .15);
    position: relative;
    overflow: hidden
}

.home-accordion img.crest-bg {
    position: absolute;
    z-index: 1;
    opacity: .1;
    pointer-events: none
}

.home-accordion img.crest-bg.crest-bg-top {
    top: -490px;
    left: -440px
}

@media screen and (max-width:1023px) {
    .home-accordion img.crest-bg.crest-bg-top {
        top: -200px;
        left: -200px
    }
}

.home-accordion img.crest-bg.crest-bg-bottom {
    bottom: -490px;
    right: -440px
}

@media screen and (max-width:1023px) {
    .home-accordion img.crest-bg.crest-bg-bottom {
        bottom: -200px;
        right: -200px
    }
}

.home-accordion .container {
    padding: 100px 0 130px
}

.home-accordion .container .block-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 50px;
    gap: 30px
}

.home-accordion .container .block-header h2 {
    max-width: 850px;
    text-align: center;
    font-family: Aime, serif;
    font-size: 3.75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 4.5rem
}

@media screen and (max-width:1023px) {
    .home-accordion .container .block-header h2 {
        max-width: calc(100vw - 80px);
        font-size: 1.875rem;
        line-height: 2.25rem
    }
}

.home-accordion .container .accordion-wrapper {
    height: 654px;
    width: 100%;
    display: flex
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper {
        flex-direction: column;
        height: 95vh
    }
}

.home-accordion .container .accordion-wrapper.items-3 .accordion-item {
    width: 33.333%
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper.items-3 .accordion-item {
        height: 33.333%
    }
}

.home-accordion .container .accordion-wrapper.items-4 .accordion-item {
    width: 25%
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper.items-4 .accordion-item {
        height: 25%
    }
}

.home-accordion .container .accordion-wrapper.items-5 .accordion-item {
    width: 20%
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper.items-5 .accordion-item {
        height: 20%
    }
}

.home-accordion .container .accordion-wrapper.has-active .accordion-item {
    flex-shrink: 1;
    width: 0%
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper.has-active .accordion-item {
        height: 0%
    }
}

.home-accordion .container .accordion-wrapper.has-active .accordion-item .visible-content {
    opacity: 0 !important;
    transition-delay: 0s !important
}

.home-accordion .container .accordion-wrapper .accordion-item {
    position: relative;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
    transition: width .75s ease-in-out;
    z-index: 3
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item {
        width: 100% !important;
        transition: height .75s ease-in-out
    }
}

.home-accordion .container .accordion-wrapper .accordion-item:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    background: linear-gradient(45deg, rgba(0, 0, 0, .7) 20%, rgba(0, 0, 0, 0) 75%)
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item:before {
        background: linear-gradient(45deg, rgba(0, 0, 0, .7) 20%, rgba(0, 0, 0, .4) 75%)
    }
}

.home-accordion .container .accordion-wrapper .accordion-item img.close {
    position: absolute;
    top: 40px;
    right: 40px;
    opacity: 0;
    z-index: 3;
    transform: rotate(45deg);
    transition: opacity .3s ease-in-out;
    transition-delay: .2s
}

.home-accordion .container .accordion-wrapper .accordion-item .visible-content {
    position: relative;
    z-index: 3;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    padding-bottom: 48px;
    transition: opacity .3s ease-in-out, transform .3s ease-in-out;
    transition-delay: .4s;
    opacity: 1;
    transform: scale(1)
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .visible-content {
        padding-left: 20px;
        padding-bottom: 20px;
        align-items: flex-start
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .visible-content .item-subtitle {
    margin-top: 25px;
    color: #fff;
    font-family: "Josefin Sans", sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    padding: 11px 12px 9px
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .visible-content .item-subtitle {
        margin-top: 0
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .visible-content .item-title {
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.375rem;
    letter-spacing: -.035rem;
    margin-top: 16px
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .visible-content .item-title {
        margin-top: 8px
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .visible-content img {
    transition: transform .3s ease-in-out;
    transform: rotate(0)
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .visible-content img {
        position: absolute;
        right: 20px;
        bottom: 20px
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .hidden-content {
    z-index: 3;
    opacity: 0;
    pointer-events: none;
    width: 100%;
    max-width: 400px;
    transform: translateY(-50%) scale(.85);
    overflow: hidden;
    transition: transform .3s ease-in-out, opacity .3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 120px
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .hidden-content {
        max-width: calc(100vw - 80px);
        left: 50%;
        transform: translateX(-50%) translateY(-50%) scale(.85)
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .hidden-content span.pre-quote {
    display: block;
    height: 42px;
    color: #32aae1;
    font-family: Aime, serif;
    font-size: 5.625rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 6px
}

.home-accordion .container .accordion-wrapper .accordion-item .hidden-content .content-quote {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.125rem
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item .hidden-content .content-quote {
        font-size: 1.125rem;
        line-height: 1.5rem
    }
}

.home-accordion .container .accordion-wrapper .accordion-item .hidden-content .content-byline {
    margin-top: 15px;
    position: relative;
    color: #fff;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.375rem;
    letter-spacing: 2;
    text-transform: uppercase;
    padding-left: 37px
}

.home-accordion .container .accordion-wrapper .accordion-item .hidden-content .content-byline:before {
    content: "";
    position: absolute;
    display: block;
    width: 24px;
    height: 1px;
    background: #009ec2;
    top: calc(50% - 3px);
    left: 0;
    transform: translateY(-50%)
}

.home-accordion .container .accordion-wrapper .accordion-item:hover {
    cursor: pointer
}

.home-accordion .container .accordion-wrapper .accordion-item:hover .btn {
    background: #1d2eb7
}

.home-accordion .container .accordion-wrapper .accordion-item:hover .visible-content img {
    transform: rotate(90deg)
}

.home-accordion .container .accordion-wrapper .accordion-item.is-active {
    flex-grow: 1;
    flex-shrink: 0;
    width: 100%
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item.is-active {
        height: 100%
    }
}

.home-accordion .container .accordion-wrapper .accordion-item.is-active img.close {
    opacity: 1
}

.home-accordion .container .accordion-wrapper .accordion-item.is-active .visible-content {
    opacity: 0;
    pointer-events: none;
    transform: scale(.85);
    transition-delay: 0s
}

.home-accordion .container .accordion-wrapper .accordion-item.is-active .hidden-content {
    opacity: 1;
    pointer-events: all;
    transform: translateY(-50%) scale(1);
    transition-delay: .45s
}

@media screen and (max-width:1023px) {
    .home-accordion .container .accordion-wrapper .accordion-item.is-active .hidden-content {
        transform: translateX(-50%) translateY(-50%) scale(1)
    }
}

@media screen and (max-width:1023px) {
    section.content-block.home-news {
        margin-top: 120px
    }
}

section.content-block.home-news .block-header {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 40px;
    margin-bottom: 33px
}

@media screen and (min-width:1024px) {
    section.content-block.home-news .block-header {
        flex-wrap: wrap;
        justify-content: space-between
    }
}

section.content-block.home-news .block-header h2 {
    color: #1E7B3C;
    font-family: Aime, serif;
    margin-bottom: 0
}

@media screen and (max-width:1023px) {
    section.content-block.home-news .block-header h2 {
        max-width: 505px;
        text-align: center
    }
}

@media screen and (max-width:1023px) {
    section.content-block.home-news .block-header .btn {
        display: none
    }
}

section.content-block.home-news .block-footer {
    display: none
}

@media screen and (max-width:1023px) {
    section.content-block.home-news .block-footer {
        display: flex;
        justify-content: center;
        margin-top: 40px
    }
}

.news-grid {
    display: flex;
    align-items: stretch;
    gap: 20px;
    row-gap: 80px;
    flex-wrap: wrap
}

@media screen and (max-width:1023px) {
    .news-grid {
        justify-content: center;
        row-gap: 40px
    }
}

.news-grid .news-card {
    display: flex;
    flex-direction: column;
    width: calc(33.3333% - 14px)
}

@media screen and (max-width:1023px) {
    .news-grid .news-card {
        width: calc(50% - 14px)
    }
}

@media screen and (max-width:767px) {
    .news-grid .news-card {
        width: 100%
    }
}

.news-grid .news-card:hover .btn {
    color: #1E7B3C
}

.news-grid .news-card:hover .btn span {
    border-color: #1E7B3C
}

.news-grid .news-card:hover .news-image img {
    width: 105% !important;
    height: 105% !important
}

.news-grid .news-card:hover .no-image img {
    width: 72%;
    height: 72%
}

.news-grid .news-card.with-image .news-image {
    flex-grow: 0;
    position: relative;
    padding-top: 70.6214689266%;
    width: 100%;
    overflow: hidden
}

.news-grid .news-card.with-image .news-image img {
    transition: height .3s, width .3s;
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: none !important;
    max-height: none !important
}

.news-grid .news-card.with-image .news-content {
    border-top: 0;
    justify-content: space-between
}

.news-grid .news-card .no-image {
    border: 1px solid #d9d9d9;
    border-bottom: 0;
    flex-grow: 0;
    position: relative;
    padding-top: 70.6214689266%;
    width: 100%;
    background: #f3f8fd
}

.news-grid .news-card .no-image img {
    transition: height .3s, width .3s;
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 66%;
    height: 66%;
    object-fit: contain;
    object-position: center
}

.news-grid .news-card .news-content {
    flex-grow: 1;
    border: 1px solid #d9d9d9;
    border-top: 0;
    padding: 35px 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 180px
}

.news-grid .news-card .news-content h4 {
    color: #324C3F;
    font-family: Aime, serif;
    font-size: 1.375rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.75rem;
    margin-bottom: 22px
}

.news-grid .news-card .news-content div.news-date {
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px
}

.news-grid .news-card .news-content div.news-date span {
    color: #324C3F;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.375rem;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

.news-grid .news-card .news-content div.news-date span.dot {
    color: #01afea
}

section.content-block.home-scrolling-text .scrolling-container .line {
    display: flex;
    align-items: center;
    gap: 33px
}

section.content-block.home-scrolling-text .scrolling-container .line .word {
    display: flex;
    align-items: center
}

section.content-block.home-scrolling-text .scrolling-container .line .word span.text {
    cursor: default;
    transition: color .6s;
    text-transform: lowercase;
    font-family: Aime, serif;
    color: rgba(29, 46, 183, .1);
    font-size: 2rem;
    line-height: 1.1;
    font-style: normal;
    font-weight: 700;
    white-space: nowrap
}

@media screen and (min-width:768px),
print {
    section.content-block.home-scrolling-text .scrolling-container .line .word span.text {
        font-size: 7.5rem
    }
}

@media screen and (min-width:1024px) {
    section.content-block.home-scrolling-text .scrolling-container .line .word span.text {
        font-size: 9.5rem
    }
}

section.content-block.home-scrolling-text .scrolling-container .line .word span.text:hover {
    color: #1E7B3C
}

section.content-block.home-scrolling-text .scrolling-container .line span.divider {
    width: 10px;
    height: 10px;
    transform: translateY(50%);
    display: grid;
    place-items: center
}

@media screen and (min-width:768px),
print {
    section.content-block.home-scrolling-text .scrolling-container .line span.divider {
        width: 20px;
        height: 20px
    }
}

section.content-block.home-scrolling-text .scrolling-container .line span.divider svg {
    width: 10px;
    height: 10px
}

@media screen and (min-width:768px),
print {
    section.content-block.home-scrolling-text .scrolling-container .line span.divider svg {
        width: 20px;
        height: 20px
    }
}

section.content-block.home-scrolling-text .scrolling-container .line.line-one {
    animation: scroll 90s linear infinite
}

section.content-block.home-scrolling-text .scrolling-container .line.line-two {
    animation: scroll 90s linear infinite reverse
}

section.content-block.home-scrolling-text .scrolling-container .line.line-three {
    animation: scroll 90s linear infinite
}

@keyframes scroll {
    from {
        transform: translateX(0)
    }
    to {
        transform: translateX(-2200px)
    }
}

section.landing-quote {
    position: relative
}

@media screen and (min-width:768px),
print {
    section.landing-quote:after {
        content: "";
        display: block;
        position: absolute;
        width: 700px;
        height: auto;
        aspect-ratio: 1;
        z-index: -1;
        right: -12%;
        top: 0;
        max-width: 40vw;
        -webkit-mask-image: url(../img/crest-only.svg);
        mask-image: url(../img/crest-only.svg);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: cover;
        mask-size: cover;
        background-color: #e8eaf8;
        opacity: .5
    }
}

section.landing-quote .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

section.landing-quote .container .quote-image {
    position: relative;
    width: 300px;
    height: 300px;
    overflow: hidden;
    border-radius: 100%;
    margin-bottom: 40px
}

section.landing-quote .container .quote-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.landing-quote .container .quote-text {
    width: 100%;
    max-width: 913px;
    position: relative;
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 3.125rem
}

@media screen and (max-width:1023px) {
    section.landing-quote .container .quote-text {
        max-width: 548px;
        font-size: 1.5rem;
        line-height: 2.25rem
    }
}

section.landing-quote .container .quote-text svg {
    z-index: -1;
    position: absolute;
    top: -60px;
    left: -30px
}

section.landing-quote .container .button-group {
    margin-top: 60px
}

@media screen and (max-width:767px) {
    section.landing-quote .container .btn {
        text-wrap: balance
    }
}

section.landing-quote img.crest-bg {
    position: absolute;
    right: -40%;
    top: 40%;
    z-index: -1;
    height: auto;
    width: 100%;
    max-width: 420px;
    pointer-events: none
}

@media screen and (min-width:1024px) {
    section.landing-quote img.crest-bg {
        height: 705px;
        width: auto;
        max-width: none;
        right: 0
    }
}

section.landing-block.landing-icons-info .container {
    display: flex;
    flex-direction: column;
    align-items: center
}

section.landing-block.landing-icons-info .container h2 {
    text-align: center;
    max-width: 705px;
    color: #1d2eb7;
    font-family: Aime, serif;
    margin-bottom: 52px
}

section.landing-block.landing-icons-info .container .block-items {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 45px
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-icons-info .container .block-items {
        flex-wrap: wrap !important
    }
}

section.landing-block.landing-icons-info .container .block-items.items-wrap {
    flex-wrap: wrap
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-icons-info .container .block-items.items-wrap .item {
        flex: 0 0 calc(25% - 34px)
    }
}

section.landing-block.landing-icons-info .container .block-items .item {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 20px;
    max-width: 300px
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-icons-info .container .block-items .item {
        flex: 0 0 calc(50% - 34px)
    }
}

section.landing-block.landing-icons-info .container .block-items .item h3 {
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.1;
    margin: 0
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-icons-info .container .block-items .item h3 {
        font-size: 1.625rem
    }
}

section.landing-block.landing-icons-info .container .block-items .item .item-text {
    max-width: 253px;
    color: #030983;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5rem
}

section.landing-block.landing-full-width-carousel {
    padding-top: 130px
}

section.landing-block.landing-full-width-carousel .block-heading-circle {
    border-radius: 100%;
    width: clamp(150px, 80vw, 290px);
    aspect-ratio: 1;
    position: absolute;
    top: 0;
    left: -60px;
    z-index: 5;
    background: linear-gradient(270deg, #1d2eb7 40%, rgba(29, 46, 183, .9) 100%);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 60px 0 100px
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-full-width-carousel .block-heading-circle {
        width: 380px;
        padding: 0 60px 0 120px;
        left: -80px
    }
}

section.landing-block.landing-full-width-carousel .block-heading-circle h2 {
    color: #fff;
    font-family: Aime, serif;
    font-size: clamp(.875rem, 1.875rem, 7vw);
    line-height: 1.2;
    font-style: normal;
    font-weight: 700;
    letter-spacing: -.06538rem;
    margin: 0
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-full-width-carousel .block-heading-circle h2 {
        font-size: clamp(.875rem, 3rem, 7vw)
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-dots-wrapper {
    width: auto;
    position: relative;
    display: none
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-dots-wrapper {
        display: block
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper button {
    cursor: pointer;
    font-size: 0
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper button svg circle {
    stroke: #030983;
    transition: stroke .3s
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper button svg path {
    fill: #030983;
    transition: fill .3s
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper button:hover svg circle {
    stroke: #01afea;
    transition: stroke .3s
}

section.landing-block.landing-full-width-carousel .full-width-carousel .slick-controls .slick-arrows-wrapper button:hover svg path {
    fill: #01afea;
    transition: fill .3s
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide {
    background-position: 50% 50%;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100vw;
    min-height: 480px;
    aspect-ratio: 3/4;
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide {
        width: 33vw;
        height: 796px
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide {
        width: 21vw
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background: linear-gradient(0deg, rgba(0, 0, 0, .7) 10%, rgba(0, 0, 0, 0) 100%)
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide.hover-partial .slide-content .hidden-content {
    pointer-events: none
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide.hover-partial:hover .slide-content .hidden-content {
    grid-template-rows: 1fr;
    pointer-events: all
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide.hover-partial.slick-current.slick-active .slide-content .hidden-content {
        grid-template-rows: 1fr;
        pointer-events: all
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content {
    padding: 0 40px 40px;
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
    bottom: 0;
    position: absolute
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content {
        padding: 0 40px 60px
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content .hidden-content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .3s
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content .hidden-content .hidden-content-inner {
    overflow: hidden;
    display: grid;
    gap: 19px
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content .hidden-content .hidden-content-inner {
        gap: 24px
    }
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content .slide-subheading {
    color: #fff;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content h3 {
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 2.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.2;
    margin: 0
}

section.landing-block.landing-full-width-carousel .full-width-carousel .carousel-track .slide .slide-content .slide-text {
    width: 100%;
    max-width: 309px;
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.2;
    margin: 0
}

section.landing-block.landing-college-life {
    padding-top: 40px
}

section.landing-block.landing-college-life>div .block-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 28px
}

section.landing-block.landing-college-life>div .block-header h2 {
    color: #1d2eb7;
    text-align: center;
    margin-bottom: 0
}

section.landing-block.landing-college-life>div .block-header .block-text {
    max-width: 80%;
    text-wrap: balance;
    color: #030983;
    text-align: center;
    font-family: Aime, serif;
    padding: 0 20px;
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-college-life>div .block-header .block-text {
        font-size: 1.25rem
    }
}

section.landing-block.landing-college-life>div .block-header .student-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10vw;
    padding-bottom: 40px;
    position: relative
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .block-header .student-controls {
        gap: 80px
    }
}

section.landing-block.landing-college-life>div .block-header .student-controls .active-indicator {
    position: absolute;
    width: 14px;
    height: 14px;
    background: #01afea;
    border-radius: 100%;
    bottom: 20px;
    transform: translate(-50%, 25%);
    transition: left .3s
}

section.landing-block.landing-college-life>div .block-header .student-controls .student-control {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    opacity: .5;
    transition: opacity .3s;
    cursor: pointer
}

section.landing-block.landing-college-life>div .block-header .student-controls .student-control.is-active,
section.landing-block.landing-college-life>div .block-header .student-controls .student-control:hover {
    opacity: 1
}

section.landing-block.landing-college-life>div .block-header .student-controls .student-control div {
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-college-life>div .block-header .student-controls .student-control div {
        font-size: 1.75rem
    }
}

section.landing-block.landing-college-life>div .block-header .student-controls .student-control span {
    color: #1d2eb7;
    font-family: "Josefin Sans", sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-college-life>div .block-header .student-controls .student-control span {
        font-size: .875rem
    }
}

section.landing-block.landing-college-life>div .student-tabs {
    position: relative;
    width: 100%;
    display: grid
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs {
        height: 850px
    }
}

section.landing-block.landing-college-life>div .student-tabs .student {
    background-position: 0 0;
    background-repeat: no-repeat;
    grid-area: 1/1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .3s;
    z-index: 2
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-college-life>div .student-tabs .student {
        background-image: none !important
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student {
        background-position: 50% 50%;
        background-size: cover;
        display: flex;
        align-items: stretch;
        justify-content: space-between
    }
    section.landing-block.landing-college-life>div .student-tabs .student:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, .2);
        background: linear-gradient(45deg, rgba(0, 0, 0, .75) 25%, rgba(0, 0, 0, .35) 100%);
        z-index: -1
    }
}

@media screen and (min-width:1024px) and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student:after {
        background: linear-gradient(45deg, rgba(0, 0, 0, .5) 25%, rgba(0, 0, 0, .15) 100%)
    }
}

section.landing-block.landing-college-life>div .student-tabs .student.is-active {
    opacity: 1;
    pointer-events: all;
    visibility: visible
}

section.landing-block.landing-college-life>div .student-tabs .student .quote {
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 20px;
    gap: 20px;
    height: 300px;
    background-size: cover;
    position: relative
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-college-life>div .student-tabs .student .quote:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, .2);
        background: linear-gradient(45deg, rgba(0, 0, 0, .75) 25%, rgba(0, 0, 0, .35) 100%);
        z-index: 1
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .quote {
        background-image: none !important;
        height: auto;
        padding: 0 20px 60px 70px
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .quote .quote-text {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    z-index: 2
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-college-life>div .student-tabs .student .quote .quote-text {
        font-size: clamp(.875rem, 2.5rem, 2.5vw);
        max-width: 50vw
    }
}

@media screen and (min-width:1244px) {
    section.landing-block.landing-college-life>div .student-tabs .student .quote .quote-text {
        font-size: 1.875rem
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .quote .quote-byline {
    color: #01afea;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .07875rem;
    text-transform: uppercase;
    z-index: 2
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-college-life>div .student-tabs .student .quote .quote-byline {
        font-size: 1.10238rem;
        max-width: 415px
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper {
        position: relative;
        z-index: 3;
        width: calc(100vh - 100px);
        height: calc(100vh - 100px);
        max-height: 880px;
        background: #1d2eb7;
        background: linear-gradient(190deg, #1d2eb7 50%, rgba(29, 46, 183, .75) 100%);
        border-radius: 100%;
        transform: translate(35%, -30px);
        width: 100%;
        max-width: 880px;
        height: 103%
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls {
    height: 100%;
    display: none;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 26px;
    transform: translate(-50%, 15px)
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls {
        display: inline-flex
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control {
    transition: background .3s;
    cursor: pointer
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control.is-active,
section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control:hover {
    background: #d6e9f8
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control:before {
    border-color: #c3d6f2
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control:nth-child(1) {
    transform: translate(70%, 30px)
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control:nth-child(4) {
    transform: translate(70%, -30px)
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control>div {
    max-width: 150px;
    text-wrap: balance
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control .time {
    display: block;
    color: #01afea;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: .93806rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .067rem
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-controls .class-control .name {
    display: block;
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1.47406rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.74213rem
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content {
    padding: 20px;
    display: grid;
    gap: 40px;
    background-color: #1d2eb7;
    min-height: 240px
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content {
        background-color: transparent;
        gap: 0;
        padding: 0;
        position: absolute;
        top: 50%;
        left: 40%;
        transform: translate(-50%, -50%)
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class {
        width: 285px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-75%, -50%);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-end;
        gap: 25px;
        opacity: 0;
        pointer-events: none;
        transition: opacity .3s, transform .3s
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class.is-active {
    opacity: 1;
    pointer-events: all
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class.is-active {
        transform: translate(-50%, -50%)
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .time {
    color: #01afea;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .0625rem
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .time {
        text-align: right
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .desc,
section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class h3.name {
    color: #fff;
    font-family: Aime, serif;
    font-style: normal
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .desc,
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class h3.name {
        text-align: right
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class h3.name {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 1rem
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class h3.name {
        font-size: 2.5rem;
        margin-bottom: 2rem
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .desc {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.5
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .desc {
        font-size: 1.25rem
    }
}

section.landing-block.landing-college-life>div .student-tabs .student .classes-wrapper .classes-content .class .btn {
    margin-top: 20px;
    display: inline-flex
}

section.landing-block.landing-college-life .slick-controls {
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 0
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-college-life .slick-controls {
        display: none
    }
}

section.landing-block.landing-college-life .slick-controls .slick-paging {
    position: absolute;
    display: flex;
    gap: 4px;
    font-size: .75rem
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    gap: 50px
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper button {
    cursor: pointer;
    font-size: 0
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper button svg circle {
    stroke: #030983;
    transition: stroke .3s
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper button svg path {
    fill: #030983;
    transition: fill .3s
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper button:hover svg circle {
    stroke: #01afea;
    transition: stroke .3s
}

section.landing-block.landing-college-life .slick-controls .slick-arrows-wrapper button:hover svg path {
    fill: #01afea;
    transition: fill .3s
}

section.landing-block.landing-text-and-carousel {
    position: relative
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-text-and-carousel {
        margin-top: 150px
    }
}

section.landing-block.landing-text-and-carousel img.image-bg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    height: 50%
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel img.image-bg {
        height: 100%;
        top: 0
    }
}

section.landing-block.landing-text-and-carousel .outer-wrapper {
    position: relative;
    overflow: hidden
}

section.landing-block.landing-text-and-carousel .outer-wrapper:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: -20%;
    aspect-ratio: 1;
    max-width: 60%;
    height: 100%;
    -webkit-mask-image: url(../img/crest-full.svg);
    mask-image: url(../img/crest-full.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: #f2f2f9
}

@media screen and (max-width:767px) {
    section.landing-block.landing-text-and-carousel .outer-wrapper:before {
        max-width: 580px;
        width: 100%
    }
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper {
        display: grid;
        grid-template-columns: minmax(0, 50%) minmax(0, 1fr);
        gap: 20px;
        align-items: center
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr)
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .text {
    padding: 40% 40px 0 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 27px
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper .text {
        padding: 0 50px 0 0
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .text h2 {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-style: normal;
    margin: 0
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper .text h2 {
        max-width: 300px
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper .text h2 {
        max-width: 521px
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .text .block-text {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 150%
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper .text .block-text {
        max-width: 300px
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper .text .block-text {
        max-width: 500px;
        font-size: 1.25rem
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel {
    margin-top: 60px
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper .carousel {
        display: flex;
        margin-top: 0
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item {
        width: 460px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-item-inner {
    display: grid;
    place-items: center
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-item-inner {
        width: 380px;
        margin: 0 30px
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-item-inner {
        width: 400px
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-image {
    width: 100%;
    height: auto;
    max-width: 100%;
    aspect-ratio: 1;
    position: relative;
    border-radius: 100%;
    overflow: hidden;
    margin-bottom: 34px
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-image {
        width: 400px;
        height: 400px
    }
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item .carousel-image img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item h3 {
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    margin-bottom: 20px;
    max-width: 261px
}

section.landing-block.landing-text-and-carousel .tile-wrapper .carousel .carousel-track .carousel-item p {
    margin: 0;
    max-width: 309px;
    color: #030983;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    margin-top: 50px
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-dots-wrapper {
    width: auto;
    position: relative;
    display: none
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-dots-wrapper {
        display: block
    }
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-dots-wrapper ul.slick-dots {
    width: 330px
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper {
    display: flex;
    align-items: center;
    gap: 10px
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper button {
    font-size: 0;
    cursor: pointer
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper button svg circle {
    transition: stroke .3s
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper button svg path {
    transition: fill .3s
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper button:hover svg circle {
    stroke: #01afea
}

section.landing-block.landing-text-and-carousel .slick-controls-wrapper .slick-arrows-wrapper button:hover svg path {
    fill: #01afea
}

section.landing-map {
    position: relative;
    margin-bottom: 0 !important
}

@media screen and (min-width:1024px) {
    section.landing-map {
        padding-top: 90px
    }
}

@media screen and (max-width:1023px) {
    section.landing-map {
        padding-top: 130px
    }
}

section.landing-map #map {
    position: relative;
    z-index: 1;
    height: 660px
}

@media screen and (max-width:1023px) {
    section.landing-map #map {
        height: 800px
    }
}

section.landing-map #map iframe {
    height: 100%
}

section.landing-map .img-outer {
    padding-top: 45.8333333333%
}

section.landing-map .inner-wrapper {
    overflow: hidden
}

section.landing-map .content {
    position: absolute;
    top: 0;
    left: -20%;
    z-index: 5;
    margin: 35px 0;
    padding: 20px 20px 20px 30%;
    background-color: #fff;
    pointer-events: all;
    background: linear-gradient(190deg, rgba(29, 46, 183, .95) 50%, rgba(29, 46, 183, .85) 100%);
    border-radius: 100%;
    height: auto;
    width: 100vw;
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 15px
}

@media screen and (min-width:768px),
print {
    section.landing-map .content {
        align-items: center;
        padding: 20px;
        left: auto;
        right: 5%;
        height: 600px;
        width: 600px;
        gap: 50px
    }
}

@media screen and (min-width:1024px) and (max-height:700px) {
    section.landing-map .content {
        height: 450px;
        width: 450px
    }
}

section.landing-map .content .section-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start
}

@media screen and (min-width:768px),
print {
    section.landing-map .content .section-text {
        align-items: center
    }
}

section.landing-map .content .section-text h2 {
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: clamp(.875rem, 3rem, 6vw);
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 20px 0
}

@media screen and (min-width:768px),
print {
    section.landing-map .content .section-text h2 {
        font-size: 3.75rem;
        margin: 0 0 50px 0
    }
}

section.landing-map .content .section-text .subheading {
    color: #fff;
    text-align: left;
    font-family: Aime, serif;
    font-size: clamp(.875rem, 1.25rem, 6vw);
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 17px 0
}

@media screen and (min-width:768px),
print {
    section.landing-map .content .section-text .subheading {
        font-size: 1.625rem;
        text-align: center
    }
}

section.landing-map .content .section-text .address,
section.landing-map .content .section-text .phone {
    color: #fff;
    -webkit-text-fill-color: #fff;
    text-align: left;
    font-family: Aime, serif;
    font-size: clamp(.75rem, 1rem, 3vw);
    font-style: normal;
    font-weight: 400;
    line-height: 1.375rem;
    margin: 0 0 17px 0
}

@media screen and (min-width:768px),
print {
    section.landing-map .content .section-text .address,
    section.landing-map .content .section-text .phone {
        text-align: center;
        font-size: 1.25rem
    }
}

section.landing-map .content .section-text .phone {
    margin: 0
}

section.landing-map .content .button-group {
    display: flex;
    gap: 16px;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column
}

@media screen and (min-width:768px),
print {
    section.landing-map .content .button-group {
        flex-direction: row;
        justify-content: center;
        align-items: center
    }
}

section.landing-map .content .button-group a {
    color: #01afea;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.125rem;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    text-decoration: underline;
    transition: color .3s
}

section.landing-map .content .button-group a:hover {
    color: #fff
}

section.landing-block.landing-tiles>div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

section.landing-block.landing-tiles>div h2 {
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    margin: 0 0 55px 0;
    max-width: 940px
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-tiles>div h2 {
        max-width: 660px;
        padding: 0 20px
    }
}

section.landing-block.landing-tiles>div .tiles {
    display: grid;
    gap: 20px
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-tiles>div .tiles {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 35px;
        width: 100%
    }
}

@media screen and (min-width:1024px) {
    section.landing-block.landing-tiles>div .tiles {
        gap: 20px
    }
}

section.landing-block.landing-tiles>div .tiles .tile {
    position: relative;
    flex-shrink: 0;
    width: 100%;
    height: auto;
    min-height: 280px;
    aspect-ratio: 1;
    border-radius: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:768px),
print {
    section.landing-block.landing-tiles>div .tiles .tile {
        min-height: 210px
    }
}

section.landing-block.landing-tiles>div .tiles .tile:hover:before {
    background: rgba(29, 46, 183, .85)
}

section.landing-block.landing-tiles>div .tiles .tile:hover .tile-content span.button-arrow {
    opacity: 1;
    transform: translate(-50%, 0)
}

section.landing-block.landing-tiles>div .tiles .tile:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .4);
    z-index: 1;
    transition: background .3s
}

section.landing-block.landing-tiles>div .tiles .tile .tile-content {
    position: relative;
    z-index: 2
}

section.landing-block.landing-tiles>div .tiles .tile .tile-content h3 {
    margin: 0;
    color: #fff;
    font-family: Aime, serif;
    font-size: 2.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 124%;
    text-align: center
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-tiles>div .tiles .tile .tile-content h3 {
        font-size: 1.5rem;
        line-height: 2.25rem;
        margin-bottom: 4px
    }
}

section.landing-block.landing-tiles>div .tiles .tile .tile-content h4 {
    margin: 0;
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    height: 20px;
    line-height: 1.25rem
}

@media screen and (max-width:1023px) {
    section.landing-block.landing-tiles>div .tiles .tile .tile-content h4 {
        font-size: .875rem;
        line-height: 1.375rem
    }
}

section.landing-block.landing-tiles>div .tiles .tile .tile-content span.button-arrow {
    position: absolute;
    transform: translate(-50%, 100%);
    left: 50%;
    bottom: -70px;
    opacity: 0;
    transition: transform .3s, opacity .3s
}

section.landing-block.landing-tiles>div .tiles .tile img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1
}

.application-form .form .form__row[id$=-fields-applyingFor-field] {
    display: none
}

.rich-text-block,
.rich-text-content {
    overflow: hidden
}

.rich-text-block>:first-child,
.rich-text-content>:first-child {
    margin-top: 0 !important
}

@media screen and (min-width:1024px) {
    .rich-text-block figure.image,
    .rich-text-content figure.image {
        margin-top: 24px;
        margin-bottom: 1rem
    }
}

.rich-text-block img,
.rich-text-content img {
    max-width: 100%;
    max-height: 100%
}

@media screen and (min-width:768px),
print {
    .rich-text-block img.image-style-align-left,
    .rich-text-content img.image-style-align-left {
        float: left;
        margin-right: 20px
    }
}

@media screen and (min-width:768px),
print {
    .rich-text-block img.image-style-align-right,
    .rich-text-content img.image-style-align-right {
        float: right;
        margin-left: 20px
    }
}

.rich-text-block img.image-style-block-align-left img,
.rich-text-content img.image-style-block-align-left img {
    margin-left: 0;
    margin-right: auto
}

.rich-text-block img.image-style-block-align-right img,
.rich-text-content img.image-style-block-align-right img {
    margin-left: auto;
    margin-right: 0
}

.rich-text-block img.image-style-align-center img,
.rich-text-content img.image-style-align-center img {
    margin-left: auto;
    margin-right: auto
}

.rich-text-block ul,
.rich-text-content ul {
    @apply list-inside list-disc;
}

.rich-text-block ol,
.rich-text-content ol {
    @apply list-inside list-decimal;
}

.rich-text-block a,
.rich-text-content a {
    color: #01afea;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    transition: color .3s
}

.rich-text-block a:hover,
.rich-text-content a:hover {
    color: #1d2eb7
}

.html-block .embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%
}

.html-block.video-centered .embed-container embed,
.html-block.video-centered .embed-container iframe,
.html-block.video-centered .embed-container object {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70%;
    height: 70%
}

@media only screen and (max-width:768px) {
    .html-block.video-centered .embed-container embed,
    .html-block.video-centered .embed-container iframe,
    .html-block.video-centered .embed-container object {
        width: 85%;
        height: 85%
    }
}

.html-block.video-fill-space .embed-container embed,
.html-block.video-fill-space .embed-container iframe,
.html-block.video-fill-space .embed-container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.events-blocks .events-wrapper {
    position: relative;
    min-height: 10rem
}

.events-blocks .events-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(../img/loading.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-color: rgba(255, 255, 255, .5);
    background-size: auto 5rem
}

.events-blocks .events-wrapper.events-loaded:before {
    display: none
}

.events-blocks .events-wrapper .error {
    color: #3e8af6;
    width: 100%;
    text-align: center
}

.events-blocks .events-wrapper .event {
    color: #030983;
    cursor: pointer;
    line-height: 1.25;
    margin-bottom: 2rem
}

.events-blocks .events-wrapper .event .event-date {
    display: block;
    line-height: 1;
    transition: color .3s;
    color: #092a6d
}

.events-blocks .events-wrapper .event .event-title {
    margin: 0;
    padding: 0;
    font-size: 1rem;
    color: #1d2eb7;
    transition: color .3s;
    line-height: 1.5
}

.events-blocks .events-wrapper .event:hover .event-title {
    color: #092a6d
}

.events-blocks .events-wrapper .event:hover .event-date {
    color: #092a6d
}

@media screen and (min-width:1024px) {
    .events-blocks .events-wrapper {
        display: flex;
        flex-wrap: wrap
    }
    .events-blocks .events-wrapper .event {
        width: 50%
    }
}

@media screen and (min-width:1244px) {
    .events-blocks .events-wrapper .event {
        width: 33.3333333333%
    }
}

.gallery {
    position: relative;
    margin: 30px 0;
    width: 100%
}

.gallery.is-basic {
    overflow: visible
}

.gallery.is-basic::before {
    display: none
}

.gallery.is-carousel .gallery-controls {
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px
}

.gallery.is-carousel .gallery-controls .gallery-next,
.gallery.is-carousel .gallery-controls .gallery-prev {
    font-size: 0;
    cursor: pointer
}

.gallery.is-carousel .gallery-controls .gallery-next svg path,
.gallery.is-carousel .gallery-controls .gallery-prev svg path {
    transition: fill .3s
}

.gallery.is-carousel .gallery-controls .gallery-next:hover svg path,
.gallery.is-carousel .gallery-controls .gallery-prev:hover svg path {
    fill: #01afea
}

.gallery.is-carousel .gallery-controls .gallery-dots-wrapper ul {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    margin: 0;
    padding: 0
}

.gallery.is-carousel .gallery-controls .gallery-dots-wrapper ul li {
    display: block;
    padding: 8px 4px;
    cursor: pointer;
    margin: 0
}

.gallery.is-carousel .gallery-controls .gallery-dots-wrapper ul li.slick-active button,
.gallery.is-carousel .gallery-controls .gallery-dots-wrapper ul li:hover button {
    background: #01afea
}

.gallery.is-carousel .gallery-controls .gallery-dots-wrapper ul li button {
    cursor: pointer;
    font-size: 0;
    display: block;
    width: 20px;
    height: 2px;
    background: #d6e9f8;
    transition: background-color .3s
}

.gallery.is-lightbox ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin: 0;
    padding: 0
}

@media screen and (min-width:768px),
print {
    .gallery.is-lightbox ul {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
}

.gallery.is-lightbox ul li {
    list-style: none;
    margin: 0;
    padding: 0
}

.gallery.is-lightbox ul li a {
    display: block;
    background-size: cover;
    padding-top: 100%;
    border-radius: 100%;
    overflow: hidden;
    position: relative;
    z-index: 1
}

.gallery.is-lightbox ul li a:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 158, 194, 0);
    z-index: 1;
    transition: background-color .3s
}

.gallery.is-lightbox ul li a:hover:before {
    background: rgba(0, 158, 194, .33)
}

.gallery.is-lightbox .more-s {
    position: absolute;
    bottom: 0;
    right: 32px;
    z-index: 2
}

@media screen and (min-width:1024px) {
    .gallery.is-lightbox .more-s {
        right: 0
    }
}

.gallery.is-lightbox .more-s a {
    height: 3.75rem;
    min-width: 3.75rem;
    font-size: 1rem;
    text-align: center;
    line-height: 3.75rem;
    padding: 0 1.2rem;
    background-color: #009ec2;
    color: hsl(0deg, 0%, 100%);
    display: block;
    border-radius: 100%;
    transition: background-color .3s
}

.gallery.is-lightbox .more-s a:hover {
    background-color: #0089a9
}

.gallery .slick {
    display: block
}

.gallery .slick .slick-image {
    position: relative
}

.gallery .slick .slick-image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 75%
}

.gallery .slick .slick-image>.image-inner {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.gallery .slick .slick-image>.image-inner img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.gallery .slick:not(.slick-initialized) .slick-image:not(:first-child),
.gallery .slick:not(.slick-initialized) .slide:not(:first-child) {
    display: none
}

.slick-lightbox .slick-slide {
    outline: 0
}

.slick-lightbox .slick-lightbox-slick-caption {
    display: block;
    margin-top: 20px
}

.slick-lightbox .slick-lightbox-slick-caption strong {
    color: hsl(0deg, 0%, 100%);
    display: block;
    margin-bottom: 10px
}

.slick-lightbox .slick-arrow {
    position: absolute;
    margin: 0;
    padding: 0;
    top: 50%;
    width: 20px;
    height: 20px;
    z-index: 1;
    border: none;
    color: transparent;
    cursor: pointer;
    background: 0 0;
    transform: translateY(-50%) rotate(315deg);
    font-size: 1.875rem;
    outline: 0;
    border-left: 2px solid hsl(0deg, 0%, 100%);
    border-top: 2px solid hsl(0deg, 0%, 100%)
}

@media screen and (min-width:768px),
print {
    .slick-lightbox .slick-arrow {
        width: 30px;
        height: 30px
    }
}

.slick-lightbox .slick-arrow.slick-prev {
    left: 10px
}

@media screen and (min-width:768px),
print {
    .slick-lightbox .slick-arrow.slick-prev {
        left: 30px
    }
}

.slick-lightbox .slick-arrow.slick-next {
    right: 10px;
    transform: translateY(-50%) rotate(135deg)
}

@media screen and (min-width:768px),
print {
    .slick-lightbox .slick-arrow.slick-next {
        right: 30px
    }
}

.slick-lightbox .slick-arrow.slick-next:before {
    color: hsl(0deg, 0%, 100%)
}

.gallery.print-only {
    display: none
}

@media print {
    .gallery.is-basic {
        display: none
    }
    .gallery.print-only {
        display: block
    }
}

.news {
    display: flex;
    flex-wrap: wrap
}

.news .card {
    display: block;
    width: calc(33.33% - 15px);
    margin-right: 20px
}

.news .card:nth-child(3n) {
    margin-right: 0
}

@media screen and (max-width:767px) {
    .news .card {
        margin: 20px 0;
        width: 100%
    }
}

section.quote.align-left .container .content {
    align-items: flex-start
}

section.quote.align-center .container .content {
    align-items: center;
    text-align: center
}

section.quote .container .content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px
}

section.quote .container .content .image-wrapper {
    position: relative;
    height: 300px;
    width: 300px;
    border-radius: 100%;
    overflow: hidden
}

section.quote .container .content .image-wrapper img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.quote .container .content .quote {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.5rem
}

section.quote .container .content .author {
    color: #030983;
    font-family: "Josefin Sans", sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1rem;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

section.quote .container .content .author span {
    color: #01afea
}

section.single-image .play-button {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    width: 100px;
    height: 100px;
    background: rgba(0, 0, 0, .5);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all .3s ease-in-out
}

section.single-image .play-button:hover {
    background: rgba(0, 0, 0, .8)
}

section.single-image .play-button svg {
    width: 50px;
    height: 50px;
    fill: #fff
}

section.single-image .image-wrapper {
    position: relative
}

section.single-image .image-wrapper:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 75%
}

section.single-image .image-wrapper.height-auto picture img {
    height: auto !important
}

section.single-image .image-wrapper picture {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

section.single-image .image-wrapper picture img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.rich-text-block table,
.rich-text-block table.table,
.table-wrapper table,
.table-wrapper table.table {
    width: 100%;
    border-radius: 8px;
    overflow: hidden
}

.rich-text-block table thead th,
.rich-text-block table.table thead th,
.table-wrapper table thead th,
.table-wrapper table.table thead th {
    padding: 10px 24px;
    color: #1d2eb7;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.25rem;
    text-transform: uppercase;
    border-bottom: 1px solid #01afea
}

.rich-text-block table tbody tr:nth-child(odd),
.rich-text-block table.table tbody tr:nth-child(odd),
.table-wrapper table tbody tr:nth-child(odd),
.table-wrapper table.table tbody tr:nth-child(odd) {
    background-color: #f4f5f7
}

.rich-text-block table tbody tr:nth-child(even),
.rich-text-block table.table tbody tr:nth-child(even),
.table-wrapper table tbody tr:nth-child(even),
.table-wrapper table.table tbody tr:nth-child(even) {
    background-color: #fff
}

.rich-text-block table tbody tr td,
.rich-text-block table.table tbody tr td,
.table-wrapper table tbody tr td,
.table-wrapper table.table tbody tr td {
    padding: 16px 24px;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #e5e7eb;
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.75rem
}

.rich-text-block table a,
.rich-text-block table.table a,
.table-wrapper table a,
.table-wrapper table.table a {
    color: #01afea;
    -webkit-text-decoration-line: underline;
    text-decoration-line: underline;
    transition: color .3s
}

.rich-text-block table a:hover,
.rich-text-block table.table a:hover,
.table-wrapper table a:hover,
.table-wrapper table.table a:hover {
    color: #1d2eb7
}

.rich-text-block table .checkbox,
.rich-text-block table .color,
.rich-text-block table .light-switch,
.rich-text-block table.table .checkbox,
.rich-text-block table.table .color,
.rich-text-block table.table .light-switch,
.table-wrapper table .checkbox,
.table-wrapper table .color,
.table-wrapper table .light-switch,
.table-wrapper table.table .checkbox,
.table-wrapper table.table .color,
.table-wrapper table.table .light-switch {
    display: block;
    height: 28px;
    width: 28px
}

.rich-text-block table .checkbox svg,
.rich-text-block table .color svg,
.rich-text-block table .light-switch svg,
.rich-text-block table.table .checkbox svg,
.rich-text-block table.table .color svg,
.rich-text-block table.table .light-switch svg,
.table-wrapper table .checkbox svg,
.table-wrapper table .color svg,
.table-wrapper table .light-switch svg,
.table-wrapper table.table .checkbox svg,
.table-wrapper table.table .color svg,
.table-wrapper table.table .light-switch svg {
    display: block;
    width: 100%;
    height: auto
}

.rich-text-block table .color *,
.rich-text-block table.table .color *,
.table-wrapper table .color *,
.table-wrapper table.table .color * {
    fill: var(--color)
}

.tab-section {
    padding: 2rem 0 0 0
}

.tab-section .tabs {
    position: relative;
    white-space: initial;
    flex-direction: column;
    overflow: hidden
}

.tab-section .tabs .tab-headers {
    display: flex;
    position: relative;
    z-index: 2
}

.tab-section .tabs .tab-title {
    flex: 1
}

.tab-section .tabs .tab-body {
    width: 100%
}

.tab-section .tabs .tab-body .accordion-header {
    display: none
}

.tab-section .tabs.style-standard .tab-headers {
    overflow: hidden;
    overflow-x: auto;
    margin-bottom: -1px;
    scrollbar-color: #092a6d hsl(0deg, 0%, 100%);
    scrollbar-width: thin
}

.tab-section .tabs.style-standard .tab-headers::-webkit-scrollbar {
    width: thin;
    cursor: pointer;
    position: absolute
}

.tab-section .tabs.style-standard .tab-headers::-webkit-scrollbar-thumb {
    background: #092a6d
}

.tab-section .tabs.style-standard .tab-headers ::-webkit-scrollbar-thumb:hover {
    background: rgba(9, 42, 109, .4)
}

.tab-section .tabs.style-standard .tab-headers::-webkit-scrollbar-track {
    background: hsl(0deg, 0%, 100%);
    border-left: 2px solid transparent;
    border-right: 2px solid transparent;
    background-clip: padding-box
}

.tab-section .tabs.style-standard .tab-headers .tab-title {
    padding: 16px 34px 12px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer
}

.tab-section .tabs.style-standard .tab-headers .tab-title:hover span {
    color: #01afea
}

.tab-section .tabs.style-standard .tab-headers .tab-title:not(:last-child):before {
    content: "";
    position: absolute;
    top: calc(50% + 2px);
    right: 0;
    height: 20px;
    width: 1px;
    background: #d6e9f8;
    transform: translateY(-50%)
}

.tab-section .tabs.style-standard .tab-headers .tab-title.is-active span {
    color: #01afea
}

.tab-section .tabs.style-standard .tab-headers .tab-title span {
    color: #030983;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.25rem;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color .3s
}

.tab-section .tabs.style-standard .accordion-wrapper {
    display: none
}

.tab-section .tabs.style-standard .accordion-wrapper.is-active {
    display: block
}

.tab-section .tabs.style-standard .accordion-wrapper .accordion-content {
    border-top: 2px solid #01afea
}

.tab-section .tabs.style-standard .tab-body .tab-content {
    padding: 64px 24px;
    background: #f3f8fd
}

.tab-section .tabs.style-accordion .tab-headers {
    display: none
}

.tab-section .tabs.style-accordion .accordion-wrapper {
    border-bottom: 2px solid #ecebea;
    padding: 0 16px 24px 16px
}

@media screen and (min-width:1024px) {
    .tab-section .tabs.style-accordion .accordion-wrapper {
        padding: 0 24px 24px 24px
    }
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header {
    display: block;
    border: none;
    cursor: pointer;
    position: relative;
    padding: 24px 0 0 0
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header:hover h4 {
    color: #01afea
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header h4 {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
    transition: color .3s;
    width: 85%
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header .accordion-icon {
    display: block;
    position: absolute;
    top: calc(50% + 12px);
    right: 0;
    transform: translateY(-50%);
    transition: transform .6s;
    width: 18px;
    height: 18px
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header .accordion-icon span {
    width: 100%;
    height: 1px;
    background: #01afea;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.tab-section .tabs.style-accordion .accordion-wrapper .accordion-header .accordion-icon span:first-child {
    transition: opacity .6s;
    transform: translate(-50%) rotate(90deg)
}

.tab-section .tabs.style-accordion .accordion-wrapper.is-active .accordion-header .accordion-icon {
    transform: translateY(-50%) rotate(180deg)
}

.tab-section .tabs.style-accordion .accordion-wrapper.is-active .accordion-header .accordion-icon span:first-child {
    opacity: 0
}

.tab-section .tabs.style-accordion .accordion-wrapper.is-active .accordion-content {
    transition: max-height .5s ease-in-out
}

.tab-section .tabs.style-accordion .accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease-in-out
}

.tab-section .tabs.style-accordion .accordion-content .tab-content {
    display: block;
    border: none;
    box-shadow: none;
    padding: 32px 0 0 0
}

.tab-section .tabs.style-accordion .accordion-content .tab-content .gallery {
    width: 100%
}

@media screen and (max-width:1023px) {
    .tab-section .tabs.style-accordion .accordion-content .tab-content .container {
        padding: 0
    }
}

@media print {
    .tab-section .tabs .tab-headers {
        display: none
    }
    .tab-section .tabs .tab-body .accordion-wrapper .accordion-header {
        display: block
    }
    .tab-section .tabs .tab-body .accordion-wrapper .accordion-content .tab-content {
        display: block
    }
}

section.link-tiles {
    overflow: hidden
}

section.link-tiles .view-all-button {
    margin-top: 50px
}

@media screen and (min-width:1024px) {
    section.link-tiles .view-all-button {
        margin-top: 60px
    }
}

section.link-tiles .c-heading {
    text-align: center;
    margin-bottom: 30px;
    position: relative;
    z-index: 2
}

@media screen and (min-width:1024px) {
    section.link-tiles .c-heading {
        margin-bottom: 50px
    }
}

section.link-tiles .tiles {
    position: relative;
    display: flex;
    flex-wrap: wrap
}

section.link-tiles .tiles.has-2 .tile {
    min-width: 50%
}

section.link-tiles .tiles.has-2 .tile .image-wrapper {
    padding-bottom: 72.7118644068%
}

section.link-tiles .tiles.has-3 .tile,
section.link-tiles .tiles.has-5 .tile {
    min-width: 33.333%
}

section.link-tiles .tiles.has-3 .tile .image-wrapper,
section.link-tiles .tiles.has-5 .tile .image-wrapper {
    padding-bottom: 109.0678890406%
}

section.link-tiles .tiles.has-3 .tile:nth-child(4),
section.link-tiles .tiles.has-3 .tile:nth-child(5),
section.link-tiles .tiles.has-5 .tile:nth-child(4),
section.link-tiles .tiles.has-5 .tile:nth-child(5) {
    min-width: 50%
}

section.link-tiles .tiles.has-3 .tile:nth-child(4) .image-wrapper,
section.link-tiles .tiles.has-3 .tile:nth-child(5) .image-wrapper,
section.link-tiles .tiles.has-5 .tile:nth-child(4) .image-wrapper,
section.link-tiles .tiles.has-5 .tile:nth-child(5) .image-wrapper {
    padding-bottom: 72.7118644068%
}

section.link-tiles .tiles.has-6 .tile {
    min-width: 33.3333%
}

section.link-tiles .tiles.has-6 .tile .image-wrapper {
    padding-bottom: 109.0678890406%
}

section.link-tiles .tiles.has-7 .tile:nth-child(5),
section.link-tiles .tiles.has-7 .tile:nth-child(6),
section.link-tiles .tiles.has-7 .tile:nth-child(7) {
    min-width: 33.333%
}

section.link-tiles .tiles.has-7 .tile:nth-child(5) .image-wrapper,
section.link-tiles .tiles.has-7 .tile:nth-child(6) .image-wrapper,
section.link-tiles .tiles.has-7 .tile:nth-child(7) .image-wrapper {
    padding-bottom: 109.0678890406%
}

section.link-tiles .tiles a.tile,
section.link-tiles .tiles div.tile {
    cursor: default;
    overflow: hidden;
    position: relative;
    min-width: 25%
}

section.link-tiles .tiles a.tile[href],
section.link-tiles .tiles div.tile[href] {
    cursor: pointer
}

@media screen and (max-width:1023px) {
    section.link-tiles .tiles a.tile,
    section.link-tiles .tiles div.tile {
        min-width: 50% !important
    }
}

@media screen and (max-width:767px) {
    section.link-tiles .tiles a.tile,
    section.link-tiles .tiles div.tile {
        min-width: 100% !important
    }
}

section.link-tiles .tiles a.tile .image-wrapper,
section.link-tiles .tiles div.tile .image-wrapper {
    overflow: hidden;
    position: relative;
    padding-bottom: 145.4237288136%
}

@media screen and (max-width:1023px) {
    section.link-tiles .tiles a.tile .image-wrapper,
    section.link-tiles .tiles div.tile .image-wrapper {
        padding-bottom: 145.4237288136% !important
    }
}

section.link-tiles .tiles a.tile .image-wrapper:before,
section.link-tiles .tiles div.tile .image-wrapper:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(25deg, rgba(0, 0, 0, .25) 18%, rgba(0, 0, 0, 0) 65%);
    z-index: 1
}

section.link-tiles .tiles a.tile .image-wrapper .image,
section.link-tiles .tiles div.tile .image-wrapper .image {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%) translateZ(0) scale(1.01);
    transition: transform .3s;
    will-change: transform
}

section.link-tiles .tiles a.tile .pre-hover-content,
section.link-tiles .tiles div.tile .pre-hover-content {
    padding: 38px 30px;
    transition: opacity .3s;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    z-index: 2
}

section.link-tiles .tiles a.tile .pre-hover-content h3,
section.link-tiles .tiles div.tile .pre-hover-content h3 {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2rem;
    margin: 0
}

section.link-tiles .tiles a.tile .content,
section.link-tiles .tiles div.tile .content {
    padding: 38px 30px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(29, 46, 183, .9);
    transform: translateY(100%);
    transition: transform .3s, opacity .3s;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    z-index: 2
}

section.link-tiles .tiles a.tile .content .tile-desc,
section.link-tiles .tiles div.tile .content .tile-desc {
    margin-top: 16px
}

section.link-tiles .tiles a.tile .content .tile-desc::-webkit-scrollbar,
section.link-tiles .tiles div.tile .content .tile-desc::-webkit-scrollbar {
    width: 12px
}

section.link-tiles .tiles a.tile .content .tile-desc::-webkit-scrollbar-track,
section.link-tiles .tiles div.tile .content .tile-desc::-webkit-scrollbar-track {
    background: #030983;
    border-radius: 10px;
    border: 5px solid #2b39b4
}

section.link-tiles .tiles a.tile .content .tile-desc::-webkit-scrollbar-thumb,
section.link-tiles .tiles div.tile .content .tile-desc::-webkit-scrollbar-thumb {
    background-color: #fff;
    border-radius: 10px;
    border: 4px solid #2b39b4
}

@media screen and (min-width:1024px) {
    section.link-tiles .tiles a.tile .content .tile-desc,
    section.link-tiles .tiles div.tile .content .tile-desc {
        max-height: 140px;
        overflow-y: auto
    }
}

@media screen and (min-width:1244px) {
    section.link-tiles .tiles a.tile .content .tile-desc,
    section.link-tiles .tiles div.tile .content .tile-desc {
        max-height: 240px
    }
}

section.link-tiles .tiles a.tile .content h3,
section.link-tiles .tiles div.tile .content h3 {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2rem;
    margin: 0
}

section.link-tiles .tiles a.tile .content p,
section.link-tiles .tiles div.tile .content p {
    color: #fff;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5rem;
    margin-top: 0;
    margin-bottom: 0
}

section.link-tiles .tiles a.tile .content div.btn,
section.link-tiles .tiles div.tile .content div.btn {
    margin-top: 30px;
    font-size: .75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.125rem;
    letter-spacing: .0625rem;
    color: #fff
}

section.link-tiles .tiles a.tile .content div.btn span,
section.link-tiles .tiles div.tile .content div.btn span {
    border-color: #fff
}

section.link-tiles .tiles a.tile .content div.btn:hover,
section.link-tiles .tiles div.tile .content div.btn:hover {
    color: #fff
}

section.link-tiles .tiles a.tile .content div.btn:hover span,
section.link-tiles .tiles div.tile .content div.btn:hover span {
    border-color: #fff
}

section.link-tiles.hover-description a.tile.has-hover:hover .image-wrapper .image,
section.link-tiles.hover-description div.tile.has-hover:hover .image-wrapper .image {
    transform: translate(-50%, -50%) scale(1.1)
}

section.link-tiles.hover-description a.tile.has-hover:hover .pre-hover-content,
section.link-tiles.hover-description div.tile.has-hover:hover .pre-hover-content {
    opacity: 0;
    pointer-events: none
}

section.link-tiles.hover-description a.tile.has-hover:hover .content,
section.link-tiles.hover-description div.tile.has-hover:hover .content {
    transform: translateY(0);
    opacity: 1;
    pointer-events: initial
}

.block-video .container {
    display: grid;
    gap: 80px
}

@media screen and (min-width:768px),
print {
    .block-video .container {
        display: flex;
        gap: 20px
    }
}

.block-video .container .video {
    flex: 1
}

.block-video .img-wrapper {
    overflow: hidden;
    position: relative;
    border-radius: 0;
    padding-top: 56.2820512821%
}

.block-video .img-wrapper:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .4);
    z-index: 1;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, .4) 92%);
    z-index: 1
}

.block-video .img-wrapper picture img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.block-video .img-wrapper .floating-video-title {
    z-index: 2;
    color: #fff;
    font-family: Aime, serif;
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.5rem;
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 24px;
    text-align: center
}

.block-video .video-title {
    margin-top: 20px;
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.75rem
}

.block-video div.caption {
    margin-top: 20px;
    color: #030983;
    font-family: Aime, serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.125rem
}

.block-video .video-title+div.caption {
    margin-top: 8px
}

.block-video .video-cta {
    position: absolute;
    z-index: 9;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    display: grid;
    place-content: center
}

.block-video a.play-video-btn {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center
}

.block-video a.play-video-btn:hover img {
    transform: scale(1.15)
}

.block-video a.play-video-btn img {
    transition: transform .3s
}

@media screen and (min-width:768px),
print {
    section.content-block.text-and-image.image-right .container {
        flex-direction: row-reverse
    }
}

section.content-block.text-and-image .container {
    display: grid;
    justify-content: center;
    gap: 20px;
    text-align: left
}

@media screen and (min-width:768px),
print {
    section.content-block.text-and-image .container {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        text-align: left;
        gap: 10%
    }
}

section.content-block.text-and-image .container .text {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 24px
}

@media screen and (min-width:1024px) {
    section.content-block.text-and-image .container .text {
        max-width: 380px
    }
}

section.content-block.text-and-image .container .text .headings {
    width: 100%
}

section.content-block.text-and-image .container .text h2 {
    max-width: 95%;
    color: #1d2eb7;
    font-family: Aime, serif;
    margin: 0
}

section.content-block.text-and-image .container .text h3 {
    max-width: 95%;
    color: #1d2eb7;
    font-family: Aime, serif;
    margin: 4px 0 0
}

section.content-block.text-and-image .container .text .block-text {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2rem
}

@media screen and (min-width:1024px) {
    section.content-block.text-and-image .container .text .block-text {
        max-width: 380px
    }
}

section.content-block.text-and-image .container .image {
    flex: 1;
    position: relative;
    max-width: 480px;
    border-radius: 100%;
    overflow: hidden
}

section.content-block.text-and-image .container .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%
}

section.content-block.text-and-image .container .image img {
    position: absolute;
    object-fit: cover;
    object-position: center;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}

section.content-block.text-and-image .container .btn {
    margin: 0
}

section.content-block.text-and-image-basic.image-right .container {
    flex-direction: row-reverse
}

@media screen and (min-width:768px),
print {
    section.content-block.text-and-image-basic .container {
        display: flex;
        align-items: flex-start;
        gap: 40px
    }
}

section.content-block.text-and-image-basic .container .text {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 24px
}

section.content-block.text-and-image-basic .container .text .block-text {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.75rem
}

section.content-block.text-and-image-basic .container .image {
    flex: 1;
    position: relative;
    overflow: hidden;
    font-size: 0;
    padding-top: 5px;
    margin-bottom: 20px
}

@media screen and (min-width:768px),
print {
    section.content-block.text-and-image-basic .container .image {
        max-width: 35%;
        margin-bottom: 0
    }
}

section.content-block.text-and-image-basic .container .image img {
    width: 100%
}

section.content-block.block-downloads .container h2 {
    color: #1d2eb7;
    font-family: Aime, serif;
    margin: 0 0 22px 0
}

section.content-block.block-downloads .container .download-items {
    display: flex;
    flex-wrap: wrap;
    gap: 20px
}

section.content-block.block-downloads .container .download-items a.download {
    padding: 16px;
    min-width: calc(50% - 10px);
    flex-grow: 1;
    border: 1px solid #d6e9f8;
    transition: background .3s;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 10px
}

section.content-block.block-downloads .container .download-items a.download:hover {
    background: #f3f8fd
}

section.content-block.block-downloads .container .download-items a.download:hover svg {
    transform: translateX(20px)
}

section.content-block.block-downloads .container .download-items a.download h3 {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.75rem;
    margin: 0
}

section.content-block.block-downloads .container .download-items a.download p {
    color: #01afea;
    font-family: "Josefin Sans", sans-serif;
    font-size: .75rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.78125rem;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    margin: 0
}

section.content-block.block-downloads .container .download-items a.download svg {
    transition: transform .3s
}

section.content-block.block-gallery-advanced {
    padding-bottom: 80px
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .slick-controls-wrapper {
    transform: translateY(calc(100% + 34px))
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .slick-controls-wrapper .slick-dots-wrapper {
    display: none
}

@media screen and (min-width:768px),
print {
    section.content-block.block-gallery-advanced .gallery-advanced-carousel .slick-controls-wrapper .slick-dots-wrapper {
        display: block
    }
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide {
    position: relative
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .image-wrapper.has-text:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 51.56%, rgba(0, 0, 0, .4) 69.79%)
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
    padding: 20px
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text h3 {
    color: #fff;
    font-family: Aime, serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    margin: 0 0 8px 0
}

@media screen and (min-width:768px),
print {
    section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text h3 {
        font-size: 1.5rem
    }
}

@media screen and (min-width:1024px) {
    section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text h3 {
        font-size: 1.625rem
    }
}

section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text p {
    color: #fff;
    font-family: Aime, serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
    margin: 0
}

@media screen and (min-width:768px),
print {
    section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text p {
        font-size: 1rem
    }
}

@media screen and (min-width:1024px) {
    section.content-block.block-gallery-advanced .gallery-advanced-carousel .carousel-track .carousel-slide .slide-text p {
        font-size: 1.125rem
    }
}

section.content-block.block-image-text-overlay {
    padding-top: 0
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay {
        padding-top: 100px
    }
}

section.content-block.block-image-text-overlay .container-full-width {
    position: relative
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay .container-full-width {
        max-height: 730px;
        padding-bottom: 0
    }
}

section.content-block.block-image-text-overlay .container-full-width .img-wrapper {
    height: 620px;
    padding-top: 0;
    position: relative;
    width: 100%
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay .container-full-width .img-wrapper {
        height: 450px
    }
}

@media screen and (min-width:1024px) {
    section.content-block.block-image-text-overlay .container-full-width .img-wrapper {
        height: 730px
    }
}

section.content-block.block-image-text-overlay .container-full-width .img-wrapper img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.content-block.block-image-text-overlay .container-full-width .block-circle {
    width: clamp(400px, 115vw, 500px);
    aspect-ratio: 1;
    position: relative;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, -20%);
    background: #1d2eb7;
    background: linear-gradient(270deg, #1d2eb7 40%, rgba(29, 46, 183, .9) 100%);
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay .container-full-width .block-circle {
        width: auto;
        height: 100%;
        position: absolute;
        left: auto;
        right: 10%;
        top: -100px;
        transform: none;
        max-height: 500px
    }
}

section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content {
    max-width: 470px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px
}

@media screen and (max-width:1023px) {
    section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content {
        max-width: 80%
    }
}

section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content h2 {
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: 2rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.0625rem;
    margin: 0;
    max-width: 60%
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content h2 {
        font-size: 2.125rem
    }
}

@media screen and (min-width:1244px) {
    section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content h2 {
        max-width: 80%;
        font-size: 3.125rem
    }
}

section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content p {
    max-width: 430px;
    color: #fff;
    text-align: center;
    font-family: Aime, serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem;
    margin: 0;
    line-height: 162%
}

@media screen and (min-width:768px),
print {
    section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content p {
        font-size: 1rem
    }
}

@media screen and (min-width:1024px) {
    section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content p {
        font-size: 1.125rem;
        max-width: 375px
    }
}

section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content .block-buttons {
    padding-top: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 20px
}

section.content-block.block-image-text-overlay .container-full-width .block-circle .circle-content .block-buttons .btn {
    white-space: nowrap
}

section.content-block.block-images {
    display: grid;
    gap: 24px
}

section.content-block.block-images .images-wrapper {
    padding: 0 24px;
    display: grid;
    gap: 18px
}

@media screen and (min-width:1024px) {
    section.content-block.block-images .images-wrapper {
        padding: 0
    }
}

section.content-block.block-images .images-wrapper .img-outer {
    height: 100%
}

section.content-block.block-images .images-wrapper .img-outer .img-wrapper {
    height: 100%;
    padding-top: 120%
}

section.content-block.block-images.images-1 .images-wrapper {
    padding: 0
}

section.content-block.block-images.images-1 .img-outer .img-wrapper {
    padding-top: 47.3611111111%
}

@media screen and (min-width:768px),
print {
    section.content-block.block-images.images-2 .images-wrapper-outer {
        display: flex;
        justify-content: center
    }
    section.content-block.block-images.images-2 .images-wrapper {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        max-width: 900px;
        gap: 24px;
        width: 100%
    }
    section.content-block.block-images.images-2 .img-wrapper {
        padding-top: 120.5479452055%
    }
}

@media screen and (min-width:768px),
print {
    section.content-block.block-images.images-3 .images-wrapper-outer {
        display: flex;
        justify-content: center
    }
    section.content-block.block-images.images-3 .images-wrapper {
        width: 100%;
        max-width: 900px;
        display: grid;
        grid-template-columns: 50px minmax(0, 1fr) minmax(0, 1fr);
        grid-template-rows: repeat(11, minmax(0, 1fr));
        gap: 24px
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(1) {
        grid-row: 1/span 6;
        grid-column: 2/3;
        display: grid;
        place-items: end
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(1) .img-wrapper {
        padding-top: 117.9144385027%
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(2) {
        grid-row: 2/span 6;
        grid-column: 3/-2
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(2) .img-wrapper {
        padding-top: 117.9144385027%
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(3) {
        grid-row: 7/span 5;
        grid-column: 1/3
    }
    section.content-block.block-images.images-3 .img-outer:nth-child(3) .img-wrapper {
        padding-top: 84.4210526316%
    }
}

@media screen and (min-width:768px),
print {
    section.content-block.block-images.images-4 .images-wrapper-outer {
        display: flex;
        justify-content: center
    }
    section.content-block.block-images.images-4 .images-wrapper {
        width: 100%;
        max-width: 900px;
        display: grid;
        grid-template-columns: 50px minmax(0, 1fr) minmax(0, 1fr) 50px;
        grid-template-rows: repeat(11, minmax(0, 1fr));
        gap: 24px
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(1) {
        grid-row: 1/span 6;
        grid-column: 2/3;
        display: grid;
        place-items: end
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(1) .img-wrapper {
        padding-top: 117.9144385027%
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(2) {
        grid-row: 2/span 6;
        grid-column: 3/-2
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(2) .img-wrapper {
        padding-top: 117.9144385027%
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(3) {
        grid-row: 7/span 5;
        grid-column: 1/3
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(3) .img-wrapper {
        padding-top: 84.4210526316%
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(4) {
        grid-row: 8/span 4;
        grid-column: 3/-1
    }
    section.content-block.block-images.images-4 .img-outer:nth-child(4) .img-wrapper {
        padding-top: 61.6842105263%
    }
}

section.content-block.block-socials .container-full-width .social-carousel .carousel-track {
    margin-left: -20px
}

section.content-block.block-socials .container-full-width .social-carousel .carousel-track .slick-track {
    display: flex;
    gap: 20px
}

section.content-block.block-socials .container-full-width .social-carousel .carousel-track .item {
    background: grey;
    position: relative;
    display: block;
    width: 25%
}

section.content-block.block-socials .container-full-width .social-carousel .carousel-track .item .content {
    position: relative;
    padding-top: 100%
}

section.content-block.block-socials .container-full-width .social-carousel .carousel-track .item .image {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

section.entry-year-calculator.content-block h2,
section.entry-year-calculator.content-block label,
section.entry-year-calculator.content-block p {
    font-family: Aime, serif;
    font-style: normal
}

section.entry-year-calculator.content-block .section-heading h2 {
    margin: 0 0 14px 0
}

section.entry-year-calculator.content-block .section-heading p {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.75rem;
    margin: 0;
    color: #030983
}

section.entry-year-calculator.content-block .prep-calculator-wrapper {
    margin-top: 40px
}

section.entry-year-calculator.content-block .prep-calculator-wrapper form fieldset label {
    display: block;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 12px;
    color: #030983
}

section.entry-year-calculator.content-block .prep-calculator-wrapper form fieldset div.input-group.date input {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    padding: 12px 24px;
    text-align: center;
    border-radius: 4px;
    border: 1px solid #1d2eb7
}

section.entry-year-calculator.content-block .prep-calculator-wrapper form fieldset div.input-group.date input:focus {
    border-color: #01afea
}

section.entry-year-calculator.content-block .child-results {
    margin-top: 48px
}

section.entry-year-calculator.content-block .child-results table.table {
    width: 100%
}

section.employment-block>h2 {
    color: #1d2eb7;
    text-align: center;
    font-family: Aime, serif;
    margin-bottom: 52px
}

section.employment-block .jobs-list {
    display: flex;
    flex-direction: column
}

section.employment-block .jobs-list a {
    display: block;
    border-bottom: 1px solid #d6e9f8;
    position: relative;
    padding-right: 46px;
    padding-top: 32px
}

section.employment-block .jobs-list a:hover span.job-title {
    color: #01afea
}

section.employment-block .jobs-list a:hover svg path {
    fill: #01afea
}

section.employment-block .jobs-list a:hover svg circle {
    stroke: #01afea
}

section.employment-block .jobs-list a svg {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%)
}

section.employment-block .jobs-list a svg path {
    fill: #1d2eb7;
    transition: fill .3s
}

section.employment-block .jobs-list a svg circle {
    stroke: #1d2eb7;
    transition: stroke .3s
}

section.employment-block .jobs-list a .job-meta {
    margin-bottom: 25px
}

section.employment-block .jobs-list a .job-meta span span {
    font-size: .75rem
}

section.employment-block .jobs-list a h2.job-school {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.25rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.875rem;
    margin-bottom: 8px
}

section.employment-block .jobs-list a span.job-title {
    display: block;
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 2.25rem;
    margin-bottom: 14px;
    transition: color .3s
}

section.employment-block .jobs-list a .job-desc {
    margin-bottom: 32px
}

section.employment-block .jobs-list a .summary {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem;
    margin-bottom: 8px
}

section.employment-block .jobs-list a ul {
    margin: 0
}

section.employment-block .jobs-list a ul li {
    color: #030983;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.625rem;
    margin-bottom: 4px
}

section.employment-block .jobs-list a ul li:last-child {
    margin: 0
}

section.employment-block .jobs-list a ul li::marker {
    color: #030983
}

section.content-block.leadership-block .container .leadership-grid {
    display: flex;
    justify-content: center;
    gap: 20px;
    row-gap: 80px;
    flex-wrap: wrap
}

section.content-block.leadership-block .container .leadership-grid .leadership-card {
    width: 100%
}

@media screen and (min-width:768px),
print {
    section.content-block.leadership-block .container .leadership-grid .leadership-card {
        width: calc(50% - 18px)
    }
}

@media screen and (min-width:1024px) {
    section.content-block.leadership-block .container .leadership-grid .leadership-card {
        width: calc(25% - 18px)
    }
}

section.content-block.leadership-block .container .leadership-grid .leadership-card .leadership-image {
    margin-bottom: 20px;
    font-size: 0
}

section.content-block.leadership-block .container .leadership-grid .leadership-card h3 {
    color: #1d2eb7;
    font-family: Aime, serif;
    font-size: 1.5rem;
    font-style: normal;
    font-weight: 400;
    line-height: 2.25rem;
    margin: 0 0 2px 0
}



.no-banner-gap {
    height: 50px
}

@media screen and (min-width:1024px) {
    .no-banner-gap {
        height: 100px
    }
}

.bg-no-image {
    background-color: #1d2eb7
}


@media screen and (min-width:768px),
print {
    .no-image-banner .container h1 {
        font-size: 5rem
    }
}

@media screen and (min-width:1024px) {
    .no-image-banner .container h1 {
        font-size: 6.25rem;
        margin-bottom: 60px
    }
}

.banner .slick-list,
.banner .slick-track {
    height: 100%
}

.home-banner,
.large-banner {
    height: auto;
    max-height: 700px;
    margin-bottom: 0;
    position: relative
}

@media screen and (min-width:1244px) {
    .home-banner,
    .large-banner {
        max-height: 875px;
        height: calc(100svh - 100px);
        margin-bottom: 0
    }
}

.home-banner.image-carousel .carousel-circles,
.large-banner.image-carousel .carousel-circles {
    width: 600px;
    height: 600px;
    position: absolute;
    left: -40px;
    bottom: 0;
    z-index: 30
}

@media screen and (min-width:768px),
print {
    .home-banner.image-carousel .carousel-circles,
    .large-banner.image-carousel .carousel-circles {
        transform: scale(.75);
        transform-origin: bottom
    }
}

@media screen and (min-width:768px) and (max-height:500px) {
    .home-banner.image-carousel .carousel-circles,
    .large-banner.image-carousel .carousel-circles {
        transform: scale(.6)
    }
}

@media screen and (max-width:1243px) {
    .home-banner.image-carousel .carousel-circles,
    .large-banner.image-carousel .carousel-circles {
        width: 540px;
        height: 540px;
        left: -60px;
        bottom: 0
    }
}

@media screen and (max-width:767px) {
    .home-banner.image-carousel .carousel-circles,
    .large-banner.image-carousel .carousel-circles {
        width: min(360px, 92vw);
        height: min(360px, 92vw);
        left: 50%;
        bottom: 0;
        transform: translate(-50%, 0)
    }
}

.home-banner.image-carousel .carousel-circles .carousel-circle,
.large-banner.image-carousel .carousel-circles .carousel-circle {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-position: 0, 0;
    background-size: 1000%;
    background-repeat: no-repeat;
    background: #1E7B3C;
background: linear-gradient(
  16deg,
  #1E7B3C 50%,
  rgba(22, 131, 76, 0.76) 100%
);
    height: 100%;
    width: 100%;
    border-radius: 100%
}

.home-banner.image-carousel .carousel-circles .carousel-circle h2,
.large-banner.image-carousel .carousel-circles .carousel-circle h2 {
    font-family: Aime, serif;
    font-size: 5rem;
    font-style: normal;
    font-weight: 700;
    line-height: 4.125rem;
    letter-spacing: -.2rem;
    color: #fff;
    text-align: center;
    line-height: 1 !important
}

@media screen and (max-width:1243px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle h2,
    .large-banner.image-carousel .carousel-circles .carousel-circle h2 {
        max-width: 316px
    }
}

@media screen and (max-width:767px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle h2,
    .large-banner.image-carousel .carousel-circles .carousel-circle h2 {
        font-size: clamp(2.25rem, 9vw, 3.25rem);
        font-weight: 700;
        letter-spacing: -.125rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width:767px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle,
    .large-banner.image-carousel .carousel-circles .carousel-circle {
        padding: 18px 16px
    }

    .home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas,
    .large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas {
        width: 100%
    }

    .home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas .btn,
    .large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas .btn {
        width: min(260px, 92%)
    }
}

@media screen and (min-width:1024px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle h2,
    .large-banner.image-carousel .carousel-circles .carousel-circle h2 {
        max-width: 90%
    }
}

.home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas,
.large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas {
    margin-top: 15px;
    display: flex;
    align-items: center;
    gap: 10px
}

@media screen and (min-width:1024px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas,
    .large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas {
        gap: 13px
    }
}

@media screen and (max-width:767px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas .btn.btn-secondary,
    .large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas .btn.btn-secondary {
        min-height: 35px
    }
}

@media screen and (max-width:1243px) {
    .home-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas,
    .large-banner.image-carousel .carousel-circles .carousel-circle .circle-ctas {
        flex-direction: column
    }
}

@media screen and (min-width:1024px) {
    .home-banner,
    .large-banner {
        height: 100vh
    }
}

.home-banner .container,
.large-banner .container {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center
}

.home-banner .container .text-c,
.large-banner .container .text-c {
    width: auto;
    color: hsl(0deg, 0%, 100%);
    padding-left: 20px;
    margin-bottom: 3.6rem
}

@media screen and (max-width:1280px) {
    .home-banner .container .text-c,
    .large-banner .container .text-c {
        width: 50%;
        padding-left: 0;
        margin-bottom: 3rem
    }
}

@media screen and (max-width:1023px) {
    .home-banner .container .text-c,
    .large-banner .container .text-c {
        margin-bottom: 2.5rem
    }
}

@media screen and (max-width:767px) {
    .home-banner .container .text-c,
    .large-banner .container .text-c {
        width: 80%;
        margin-bottom: 2rem
    }
}

@media screen and (max-width:411px) {
    .home-banner .container .text-c,
    .large-banner .container .text-c {
        width: 100%
    }
}

.home-banner .container .text-c .mark,
.large-banner .container .text-c .mark {
    font-size: .75rem;
    letter-spacing: .05rem;
    line-height: 1.4166666667;
    margin-bottom: 1rem
}

.home-banner .container .text-c .play-video-button,
.large-banner .container .text-c .play-video-button {
    transform: translateY(-50px)
}

@media screen and (min-width:1024px) {
    .home-banner .container .text-c .play-video-button,
    .large-banner .container .text-c .play-video-button {
        transform: none
    }
}

.home-banner .container .text-c h1,
.home-banner .container .text-c h2,
.large-banner .container .text-c h1,
.large-banner .container .text-c h2 {
    color: hsl(0deg, 0%, 100%);
    font-size: 3.125rem;
    line-height: 1 !important;
    letter-spacing: .05625rem;
    margin-bottom: 5px
}

@media screen and (max-width:1023px) {
    .home-banner .container .text-c h1,
    .home-banner .container .text-c h2,
    .large-banner .container .text-c h1,
    .large-banner .container .text-c h2 {
        font-size: 5rem;
        margin-bottom: 15px
    }
}

@media screen and (min-width:1024px) {
    .home-banner .container .text-c h1,
    .home-banner .container .text-c h2,
    .large-banner .container .text-c h1,
    .large-banner .container .text-c h2 {
        font-size: 6.25rem
    }
}

.home-banner .container .text-c p,
.large-banner .container .text-c p {
    font-size: 1.31rem;
    line-height: 1.5714285714;
    letter-spacing: .02875rem;
    margin-bottom: 32px;
    color: hsl(0deg, 0%, 100%)
}

@media screen and (max-width:1023px) {
    .home-banner .container .text-c p,
    .large-banner .container .text-c p {
        font-size: 1.2rem;
        margin-bottom: 25px
    }
}

@media screen and (max-width:767px) {
    .home-banner .container .text-c p,
    .large-banner .container .text-c p {
        font-size: 1.1rem;
        margin-bottom: 20px
    }
}

.home-banner .container .text-c p span,
.large-banner .container .text-c p span {
    font-weight: 700
}

.home-banner .container .text-c .readmore,
.large-banner .container .text-c .readmore {
    color: rgba(255, 255, 255, .8);
    font-size: 1rem;
    line-height: 1.4375;
    letter-spacing: .03563rem
}

.home-banner .container .text-c .readmore:hover,
.large-banner .container .text-c .readmore:hover {
    color: hsl(0deg, 0%, 100%)
}

.banner.home-banner {
    min-height: 320px;
    padding-bottom: 135px;
    height: calc(100svh - 85px)
}

@media screen and (max-width:1023px) {
    .banner.home-banner {
        height: calc(100svh - 100px)
    }

    .banner.home-banner .slick-content-outer {
        height: 100%
    }
}

@media screen and (min-width:1024px) {
    .banner.home-banner {
        height: calc(100svh - 100px)
    }
}

@media screen and (min-width:1200px) {
    .banner.home-banner {
        padding-bottom: 180px
    }
}

@media screen and (min-width:1024px) {
    body.homepage .banner.home-banner {
        height: 100svh
    }
}

@media screen and (min-width:1024px) and (max-height:700px) and (max-width:1280px) {
    .banner.home-banner .slick-content {
        -webkit-clip-path: ellipse(60% 90% at 47% 0);
        clip-path: ellipse(60% 90% at 47% 0)
    }
}

.banner {
    position: relative
}

.banner .banner-inner {
    position: relative;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover
}

.banner .text-c .subheading {
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .0625rem;
    color: #fff;
    font-size: 1.125rem
}

.banner .text-c .subheading:after {
    content: "";
    display: block;
    width: 80px;
    height: 1px;
    margin: 10px auto;
    background-color: rgba(255, 255, 255, .5)
}

.banner .slick-content-outer {
    /* height: 100%; */
    height: 100vh;
    position: relative
}

.banner .slick-content-outer .banner-logo {
    position: absolute;
    bottom: 0;
    right: 30px;
    transition: opacity .3s;
    opacity: 1;
    z-index: 2;
    bottom: 0;
    display: none
}

.banner .slick-content-outer .banner-logo img {
    filter: drop-shadow(0 0 5px #fff)
}

@media screen and (max-width:1023px) {
    .banner .slick-content-outer .banner-logo img {
        width: 213px
    }
}

@media screen and (min-width:768px),
print {
    .banner .slick-content-outer .banner-logo {
        display: block
    }
}

@media screen and (min-width:768px) and (max-height:700px) {
    .banner .slick-content-outer .banner-logo {
        bottom: -40px
    }
}

.banner .slick-content-outer .banner-logo.inactive {
    opacity: 0
}

.banner .slick-content {
    height: 100%;
    -webkit-clip-path: ellipse(120% 90% at 50% 0);
    clip-path: ellipse(120% 90% at 50% 0)
}

@media screen and (min-width:768px),
print {
    .banner .slick-content {
        -webkit-clip-path: ellipse(80% 90% at 50% 0);
        clip-path: ellipse(80% 90% at 50% 0)
    }
}

@media screen and (max-width:1023px) {
    .banner .slick-content.init .slick-dots li.slick-active button {
        height: 0
    }
}

.banner .slick-content .slick-dots {
    z-index: 99;
    top: 0;
    right: 0;
    margin: 0;
    bottom: 0;
    position: absolute;
    list-style-type: none
}

@media screen and (min-width:1024px) {
    .banner .slick-content .slick-dots {
        display: flex;
        justify-content: center;
        top: unset;
        right: 50px;
        bottom: 15px;
        padding: 10px 0
    }
}

.banner .slick-content .slick-dots li {
    margin: auto 4px 0
}

@media screen and (max-width:1023px) {
    .banner .slick-content .slick-dots li {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        margin: 0
    }
}

.banner .slick-content .slick-dots button {
    display: block;
    width: 21px;
    height: 2px;
    padding: 0;
    border: none;
    background-color: hsl(0deg, 0%, 100%);
    text-indent: -9999px;
    transition: height .4s
}

@media screen and (max-width:1023px) {
    .banner .slick-content .slick-dots button {
        width: 4px;
        height: 0;
        transition: height 0s
    }
}


@media screen and (min-width:768px),
print {
    .banner.page-banner .container h1,
    .banner.page-banner .container h2 {
        font-size: 2.25rem;
        line-height: 3rem
    }
}

@media screen and (min-width:1024px) {
    .banner.page-banner .container h1,
    .banner.page-banner .container h2 {
        font-size: 3rem;
        line-height: 3.75rem
    }
}

.banner.banner-replacement {
    background-color: #d9d9d9
}

@media screen and (min-width:1024px) {
    .banner.banner-replacement {
        height: 375px
    }
}

.banner.banner-replacement .container {
    display: flex;
    justify-content: flex-start;
    align-items: center
}

@media screen and (min-width:1024px) {
    .banner.banner-replacement .container {
        justify-content: center
    }
}

.banner.banner-replacement .container h1 {
    color: #1d2eb7;
    margin-bottom: 0
}

@media screen and (min-width:1024px) {
    .banner.banner-replacement .container h1 {
        text-align: center
    }
}

.banner+.breadcrumb {
    margin-top: 20px
}

@media screen and (min-width:1024px) {
    .banner+.breadcrumb {
        margin-top: 40px
    }
}

nav.breadcrumb {
    margin: 100px 0 0
}

nav.breadcrumb.in-banner {
    display: none
}

@media screen and (min-width:1024px) {
    nav.breadcrumb.in-banner {
        margin: 20px 0 0;
        display: block
    }
}

nav.breadcrumb.in-banner ul {
    justify-content: center
}

nav.breadcrumb.mobile-only {
    display: block
}

@media screen and (min-width:1024px) {
    nav.breadcrumb.mobile-only {
        display: none
    }
}

nav.breadcrumb+h1 {
    margin-top: 60px
}

nav.breadcrumb ul {
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px
}

nav.breadcrumb ul li {
    margin: 0
}

nav.breadcrumb ul li:not(:first-child) {
    position: relative
}

nav.breadcrumb ul li:not(:first-child):before {
    position: absolute;
    top: 50%;
    left: -6px;
    transform: translate(0, -52%);
    content: "/";
    color: #030983;
    font-weight: 700;
    font-size: .75rem
}

nav.breadcrumb ul li a {
    color: #030983;
    text-align: center;
    font-family: "Josefin Sans", sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25rem;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    padding: 0 7px;
    cursor: default
}

nav.breadcrumb ul li a[href] {
    text-decoration: underline;
    cursor: pointer;
    color: #01afea;
    transition: color .3s
}

nav.breadcrumb ul li a[href]:hover {
    color: #1d2eb7
}

nav.breadcrumb ul li.is-active a {
    pointer-events: none;
    color: #1d2eb7
}

.button-container {
    display: flex;
    justify-content: flex-start
}

.button-container .button-group {
    justify-content: flex-start;
    margin-top: 0
}

.button-container .button-group.is-vertical {
    flex-direction: column
}

.button-container .button-group .btn {
    text-align: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.buttons {
    margin: 0
}

.button-group {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 20px
}

@media screen and (min-width:768px),
print {
    .button-group {
        flex-direction: row
    }
}

.button-group.is-vertical {
    flex-direction: column;
    align-items: stretch;
    width: auto;
    display: inline-flex
}

.button-group.is-vertical .button {
    margin-right: 0
}

.button-group .button {
    min-width: 100px;
    max-width: 300px;
    overflow: hidden
}

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .875rem;
    line-height: 1.43;
    letter-spacing: .125rem;
    text-align: center;
    text-transform: uppercase;
    cursor: pointer
}

@media screen and (max-width:767px) {
    .btn {
        min-height: 47px
    }
}

.btn.btn-primary {
    padding: 16px 25px 14px;
    background: #01afea;
    color: #fff;
    border-radius: 28px;
    transition: background-color .3s;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

.btn.btn-primary:hover {
    background-color: #1d2eb7
}

.btn.btn-secondary {
    padding: 16px 25px 14px;
    background-color: rgba(1, 175, 234, 0);
    color: #01afea;
    border-radius: 28px;
    border: 1px solid #01afea;
    transition: background-color .3s, color .3s;
    font-family: "Josefin Sans", sans-serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

@media screen and (max-width:767px) {
    .btn.btn-secondary {
        font-size: .8rem;
        font-weight: 400;
        line-height: 1.23913rem;
        letter-spacing: .05rem;
        padding: 8px 20px 6px
    }
}

.btn.btn-secondary:hover {
    background-color: #01afea;
    color: #fff
}

.btn-white.btn.btn-secondary {
    color: #fff;
    background-color: rgba(255, 255, 255, 0);
    border-color: #fff
}

.btn-white.btn.btn-secondary:hover {
    background-color: #fff;
    color: #1d2eb7
}

.btn.btn-tertiary {
    color: #01afea;
    font-family: "Josefin Sans", sans-serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 700;
    line-height: .8125rem;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    transition: color .3s
}

.btn.btn-tertiary span {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 1px solid #01afea;
    transition: border-color .3s
}

.button-group .btn.btn-tertiary {
    padding: 16px 25px 14px;
    padding-left: 6px
}

.btn.btn-tertiary:hover {
    color: #1d2eb7
}

.btn.btn-tertiary:hover span {
    border-color: #1d2eb7
}

.btn-white.btn.btn-tertiary {
    color: #fff
}

.btn-white.btn.btn-tertiary span {
    border-color: #fff
}

.btn-white.btn.btn-tertiary:hover {
    color: #1d2eb7
}

.btn-white.btn.btn-tertiary:hover span {
    border-color: #1d2eb7
}

.block-newsletter-cards .card .btn.read-more {
    padding: 3px 0;
    background: 0 0;
    border: none;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    cursor: pointer
}

.block-newsletter-cards .newsletter-more-btn.btn {
    border: none;
    margin: 40px auto 20px;
    display: block
}

@media screen and (min-width:768px),
print {
    .block-newsletter-cards .newsletter-more-btn.btn {
        margin: 60px auto 20px
    }
}

.buttons {
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.btn.btn-tertiary.white:before {
    background-color: hsl(0deg, 0%, 100%)
}

.btn.white {
    color: hsl(0deg, 0%, 100%)
}

.btn-small {
    cursor: pointer;
    display: inline-block;
    padding: 11px 16px 7px;
    background: rgba(29, 46, 183, 0);
    color: #1d2eb7;
    font-family: "Josefin Sans", sans-serif;
    font-size: .625rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .0625rem;
    text-transform: uppercase;
    border: 1px solid #1d2eb7;
    border-radius: 100px;
    transition: background-color .3s, color .3s
}

.btn-small.is-active,
.btn-small:hover {
    background-color: #1d2eb7;
    color: #fff
}

.action-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 105;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s ease-out, visibility .3s
}

.action-modal.active {
    visibility: visible;
    opacity: 1
}

.action-modal.delete {
    transition: opacity .9s, visibility .3s
}

.action-modal .action-modal-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, .7)
}

.action-modal .action-modal-content {
    position: absolute;
    display: inline-block;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding-top: 60px
}

.action-modal .action-modal-content img {
    max-width: 85vw;
    max-height: 85vh
}

.action-modal .action-modal-content .close-action-modal {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    transition: transform .3s;
    border-radius: 50%;
    background: rgba(0, 0, 0, .1)
}

.action-modal .action-modal-content .close-action-modal:after,
.action-modal .action-modal-content .close-action-modal:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 3px;
    background: hsl(0deg, 0%, 100%);
    transition: background .3s
}

.action-modal .action-modal-content .close-action-modal:before {
    transform: translate(-50%, -50%) rotate(45deg)
}

.action-modal .action-modal-content .close-action-modal:after {
    transform: translate(-50%, -50%) rotate(-45deg)
}

.video-player:not(.keep-ratio):not(.container-size) {
    position: relative;
    width: 100%;
    height: 100%
}

.video-player:not(.keep-ratio):not(.container-size) .plyr {
    position: absolute;
    top: 0;
    left: 0;
    height: 100% !important;
    width: 100%
}

.video-player:not(.keep-ratio):not(.container-size) .plyr__video-wrapper,
.video-player:not(.keep-ratio):not(.container-size) video {
    position: absolute;
    width: 100%;
    height: 100% !important;
    object-fit: cover
}

.video-player:not(.keep-ratio):not(.container-size) .plyr__poster {
    background-size: cover
}

.video-player.container-size {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0
}

.video-holder {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 101%;
    min-width: 100vh
}

.video-holder .video-sizer {
    width: 100%;
    padding-bottom: 56.25%
}

.video-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 120;
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s;
    pointer-events: none
}

.video-modal.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: initial
}

.video-modal.is-active .close-modal {
    width: 50px;
    height: 50px;
    color: hsl(0deg, 0%, 100%);
    position: absolute;
    right: 20px;
    left: auto;
    top: 30px;
    z-index: 1;
    font-size: 1.875rem;
    margin: 0 auto;
    text-align: center;
    cursor: pointer
}

.video-modal.is-active .close-modal:hover {
    transform: scale(1.2) translateZ(0)
}

.video-modal .video-container {
    position: absolute;
    width: 75%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.video-modal .video-container:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 56.2820512821%
}

.video-modal .video-container .video-player {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

/*!
 * Datepicker for Bootstrap v1.10.0 (https://github.com/uxsolutions/bootstrap-datepicker)
 *
 * Licensed under the Apache License v2.0 (https://www.apache.org/licenses/LICENSE-2.0)
 */

.picker-container {
    position: absolute;
    bottom: 70px
}

.picker-container thead {
    font-family: Aime, serif;
    font-size: 1.125rem
}

.picker-container tbody {
    font-family: Aime, serif;
    font-size: 1rem
}

.datepicker {
    border-radius: 4px;
    direction: ltr;
    padding: 32px 20px 32px;
    margin: 2px 0 0;
    font-size: .875rem;
    text-align: center;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, .15);
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, .18)
}

.datepicker-inline {
    width: 220px
}

.datepicker-rtl {
    direction: rtl
}

.datepicker-rtl.dropdown-menu {
    left: auto
}

.datepicker-rtl table tr td span {
    float: right
}

.datepicker-dropdown {
    top: 0;
    left: 0
}

.datepicker-dropdown:before {
    content: "";
    display: inline-block;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #999;
    border-top: 0;
    border-bottom-color: rgba(0, 0, 0, .2);
    position: absolute
}

.datepicker-dropdown:after {
    content: "";
    display: inline-block;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-top: 0;
    position: absolute
}

.datepicker-dropdown.datepicker-orient-left:before {
    left: 6px
}

.datepicker-dropdown.datepicker-orient-left:after {
    left: 7px
}

.datepicker-dropdown.datepicker-orient-right:before {
    right: 6px
}

.datepicker-dropdown.datepicker-orient-right:after {
    right: 7px
}

.datepicker-dropdown.datepicker-orient-bottom:before {
    top: -7px
}

.datepicker-dropdown.datepicker-orient-bottom:after {
    top: -6px
}

.datepicker-dropdown.datepicker-orient-top:before {
    bottom: -7px;
    border-bottom: 0;
    border-top: 7px solid #999
}

.datepicker-dropdown.datepicker-orient-top:after {
    bottom: -6px;
    border-bottom: 0;
    border-top: 6px solid #fff
}

.datepicker table {
    margin: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none
}

.datepicker td,
.datepicker th {
    text-align: center;
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: none
}

.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
    background-color: transparent
}

.datepicker table tr td.day {
    background: rgba(243, 248, 253, 0)
}

.datepicker table tr td.day.focused,
.datepicker table tr td.day:hover {
    background: #f3f8fd;
    cursor: pointer
}

.datepicker table tr td.new,
.datepicker table tr td.old {
    color: #999
}

.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
    background: 0 0;
    color: #999;
    cursor: default
}

.datepicker table tr td.highlighted {
    background: #d9edf7;
    border-radius: 0
}

.datepicker table tr td.today,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today:hover {
    background: #f3f8fd
}

.datepicker table tr td.today.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today.disabled:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today[disabled] {
    background: #f3f8fd
}

.datepicker table tr td.today.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today:hover:active {
    background: #f3f8fd
}

.datepicker table tr td.today:hover:hover {
    color: #000
}

.datepicker table tr td.today.active:hover {
    color: #fff
}

.datepicker table tr td.range,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover,
.datepicker table tr td.range:hover {
    background: #eee;
    border-radius: 0
}

.datepicker table tr td.range.today,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today:hover {
    background-color: #f3d17a;
    background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
    background-repeat: repeat-x;
    border-color: #f3e97a #f3e97a #edde34;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    border-radius: 0
}

.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today.disabled:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today[disabled] {
    background-color: #f3e97a
}

.datepicker table tr td.selected,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected:hover {
    background-color: #9e9e9e;
    background-image: linear-gradient(to bottom, #b3b3b3, grey);
    background-repeat: repeat-x;
    border-color: grey grey #595959;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
}

.datepicker table tr td.selected.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected.disabled:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected[disabled] {
    background-color: grey
}

.datepicker table tr td.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:hover {
    background-color: #006dcc;
    background-image: linear-gradient(to bottom, #08c, #04c);
    background-repeat: repeat-x;
    border-color: #04c #04c #002a80;
    border-color: rgba(0, 0, 0, .1) rgba(0, 0, 0, .1) rgba(0, 0, 0, .25);
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, .25)
}

.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active.disabled:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active[disabled] {
    background-color: #04c
}

.datepicker table tr td span {
    display: block;
    width: 23%;
    height: 40px;
    line-height: 2.375rem;
    float: left;
    margin: 1%;
    cursor: pointer;
    border-radius: 4px;
    text-align: center
}

.datepicker table tr td span.focused,
.datepicker table tr td span:hover {
    border: solid 1px #1d2eb7
}

.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
    background: 0 0;
    color: #999;
    cursor: default
}

.datepicker table tr td span.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:hover {
    color: #fff;
    background-color: #1d2eb7
}

.datepicker table tr td span.active.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active.disabled:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active[disabled] {
    background-color: #04c
}

.datepicker table tr td span.new,
.datepicker table tr td span.old {
    color: #999
}

.datepicker .datepicker-switch {
    width: 145px
}

.datepicker .datepicker-switch,
.datepicker .next,
.datepicker .prev,
.datepicker tfoot tr th {
    cursor: pointer
}

.datepicker .datepicker-switch:hover,
.datepicker .next:hover,
.datepicker .prev:hover,
.datepicker tfoot tr th:hover {
    background: #eee
}

.datepicker .next.disabled,
.datepicker .prev.disabled {
    visibility: hidden
}

.datepicker .cw {
    font-size: .625rem;
    width: 12px;
    padding: 0 2px 0 5px;
    vertical-align: middle
}

.input-append.date .add-on,
.input-prepend.date .add-on {
    cursor: pointer
}

.input-append.date .add-on i,
.input-prepend.date .add-on i {
    margin-top: 3px
}

.input-daterange input {
    text-align: center
}

.input-daterange input:first-child {
    border-radius: 3px 0 0 3px
}

.input-daterange input:last-child {
    border-radius: 0 3px 3px 0
}

.input-daterange .add-on {
    display: inline-block;
    width: auto;
    min-width: 16px;
    height: 18px;
    padding: 4px 5px;
    font-weight: 400;
    line-height: 1.125rem;
    text-align: center;
    text-shadow: 0 1px 0 #fff;
    vertical-align: middle;
    background-color: #eee;
    border: 1px solid #ccc;
    margin-left: -5px;
    margin-right: -5px
}

.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.visually-hidden .focusable:active,
.visually-hidden .focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static
}


#wrapper {
    overflow-x: clip
}

.hidden {
    display: none !important
}

.arrow-after {
    position: relative
}

.arrow-after:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    border: 8px solid transparent;
    border-left-color: #092a6d;
    height: 0;
    opacity: 0;
    display: inline-block;
    transform: translateY(-50%);
    transition: opacity .3s ease
}

.arrow-after:hover:after {
    opacity: 1;
    animation: bounce .6s .2s ease-out
}

.divider hr {
    background-color: #d6e9f8;
    height: 1px;
    border-radius: 0
}

@media screen and (max-width:1023px) {
    .container {
        padding: 0 20px
    }
}

.until-desktop {
    display: block
}

@media screen and (min-width:1024px) {
    .until-desktop {
        display: none
    }
}

.desktop-only {
    display: none
}

@media screen and (min-width:1024px) {
    .desktop-only {
        display: block
    }
}

section {
    padding: 0;
    margin-bottom: 0
}

.content-block,
.tab-rich-text {
    position: relative;
    margin-top: 70px;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0
}

@media screen and (min-width:1024px) {
    .content-block:not(.spacing-no-gap),
    .content-block:not(.spacing-none),
    .tab-rich-text:not(.spacing-no-gap),
    .tab-rich-text:not(.spacing-none) {
        margin-top: 90px
    }
}

.content-block.spacing-no-gap,
.content-block.spacing-none,
.tab-rich-text.spacing-no-gap,
.tab-rich-text.spacing-none {
    margin-top: 0
}

@media screen and (min-width:1024px) {
    .content-block.spacing-no-gap,
    .content-block.spacing-none,
    .tab-rich-text.spacing-no-gap,
    .tab-rich-text.spacing-none {
        margin-top: 0
    }
}

.content-block.spacing-extra-small,
.content-block.spacing-extra-small-gap,
.tab-rich-text.spacing-extra-small,
.tab-rich-text.spacing-extra-small-gap {
    margin-top: 18px
}

@media screen and (min-width:768px),
print {
    .content-block.spacing-extra-small,
    .content-block.spacing-extra-small-gap,
    .tab-rich-text.spacing-extra-small,
    .tab-rich-text.spacing-extra-small-gap {
        margin-top: 24px
    }
}

.content-block.spacing-small,
.content-block.spacing-small-gap,
.tab-rich-text.spacing-small,
.tab-rich-text.spacing-small-gap {
    margin-top: 35px
}

@media screen and (min-width:1024px) {
    .content-block.spacing-small,
    .content-block.spacing-small-gap,
    .tab-rich-text.spacing-small,
    .tab-rich-text.spacing-small-gap {
        margin-top: 45px
    }
}

.content-block.spacing-large,
.content-block.spacing-large-gap,
.tab-rich-text.spacing-large,
.tab-rich-text.spacing-large-gap {
    margin-top: 100px
}

@media screen and (min-width:1024px) {
    .content-block.spacing-large,
    .content-block.spacing-large-gap,
    .tab-rich-text.spacing-large,
    .tab-rich-text.spacing-large-gap {
        margin-top: 150px
    }
}


.footer-primary {
    margin-top: 40px
}

@media screen and (max-width:1023px) {
    .footer-primary {
        margin-top: 40px
    }
}

.footer-primary hr {
    margin: 0;
    display: none
}

@media screen and (min-width:1024px) {
    .footer-primary hr {
        display: block
    }
}

.footer-primary .footer-row {
    display: grid;
    gap: 30px
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-row {
        grid-template-columns: 220px repeat(2, minmax(0, 1fr));
        gap: 3vw
    }
}

@media screen and (min-width:1244px) {
    .footer-primary .footer-row {
        grid-template-columns: 280px repeat(2, minmax(0, 1fr));
        gap: 5vw
    }
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-row.primary .footer-col:nth-child(1) {
        order: 1
    }
    .footer-primary .footer-row.primary .footer-col:nth-child(2) {
        order: 3
    }
    .footer-primary .footer-row.primary .footer-col:nth-child(3) {
        order: 2
    }
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-row.primary .footer-col {
        grid-template-columns: 1fr
    }
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-row.secondary {
        margin-top: 30px
    }
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-row.secondary .footer-col:nth-child(1) {
        order: 3
    }
    .footer-primary .footer-row.secondary .footer-col:nth-child(2) {
        order: 1
    }
    .footer-primary .footer-row.secondary .footer-col:nth-child(3) {
        order: 2
    }
}

.footer-primary .footer-row .footer-col {
    position: relative
}

.footer-primary .footer-logo {
    text-align: center
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-logo {
        text-align: left;
        padding-bottom: 0
    }
}

.footer-primary .footer-logo a {
    font-size: 0
}

.footer-primary .footer-logo a img {
    width: 260px
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-logo a img {
        width: 100%
    }
}

.footer-primary .footer-sponsors {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
    margin-top: 20px
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-sponsors {
        margin-top: 0;
        justify-content: flex-end
    }
}

.footer-primary .footer-sponsors a:nth-child(2) img {
    max-width: 100px
}

.footer-primary .footer-sponsors img {
    max-height: 60px;
    max-width: 130px;
    width: auto
}

.footer-primary .footer-quicklinks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin: 0;
    row-gap: 20px;
    column-gap: 3px;
    width: 100%
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-quicklinks {
        width: 100%
    }
}

.footer-primary .footer-quicklinks a {
    display: block;
    padding-right: 0;
    color: #1d2eb7;
    font-family: "Josefin Sans", sans-serif;
    font-size: .85rem;
    font-style: normal;
    font-weight: 600;
    line-height: 1.70194rem;
    letter-spacing: .125rem;
    text-transform: uppercase;
    text-align: center
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-quicklinks a {
        padding: 0;
        text-align: left
    }
}

.footer-primary .footer-quicklinks a span {
    display: inline-block;
    line-height: 1.2;
    border-bottom: 1px solid rgba(3, 9, 131, 0)
}

.footer-primary .footer-quicklinks a:hover span {
    border-color: #030983
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-campus {
        display: flex;
        flex-direction: column;
        align-items: center;
        flex: 1 1 50%
    }
}

@media screen and (max-width:767px) {
    .footer-primary .footer-campus.campus-1 .campus-links {
        display: block;
        column-count: 3;
        column-gap: 20px
    }
    .footer-primary .footer-campus.campus-1 .campus-links .campus-phone {
        margin-bottom: 5px
    }
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-campus.campus-2 {
        margin-top: 20px
    }
}

.footer-primary .footer-campus:first-child {
    margin-bottom: 0
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-campus:first-child {
        margin-bottom: 0
    }
}

.footer-primary .footer-campus .campus-name {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 1.375rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 4px
}

.footer-primary .footer-campus .campus-address {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 17px;
    display: grid;
    grid-template-columns: 12px 1fr
}

.footer-primary .footer-campus .campus-address span {
    display: inline-block;
    margin-left: 4px
}

.footer-primary .footer-campus .campus-address svg {
    width: 10px;
    height: 14px
}

.footer-primary .footer-campus .campus-address svg path {
    fill: #1E7B3C
}

.footer-primary .footer-campus .campus-links {
    display: grid;
    gap: 10px
}

@media screen and (min-width:768px),
print {
    .footer-primary .footer-campus .campus-links {
        display: flex;
        gap: 20px
    }
}

.footer-primary .footer-campus .campus-links a.campus-phone {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-campus .campus-links a.campus-phone {
        align-items: flex-start
    }
}

.footer-primary .footer-campus .campus-links a.campus-phone span.label,
.footer-primary .footer-campus .campus-links a.campus-phone span.phone {
    transition: color .3s
}

.footer-primary .footer-campus .campus-links a.campus-phone svg path {
    fill: #1E7B3C;
    transition: fill .3s
}

.footer-primary .footer-campus .campus-links a.campus-phone:hover span.label,
.footer-primary .footer-campus .campus-links a.campus-phone:hover span.phone {
    color: #1E7B3C
}

.footer-primary .footer-campus .campus-links a.campus-phone:hover svg path {
    fill: #1E7B3C
}

.footer-primary .footer-campus .campus-links a.campus-phone .label {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 1
}

.footer-primary .footer-campus .campus-links a.campus-phone .phone {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    white-space: nowrap
}

@media screen and (max-width:767px) {
    .footer-primary .footer-campus .campus-links a.campus-phone .phone {
        text-align: left
    }
}

.footer-primary .footer-campus .campus-links a.campus-phone .phone span {
    display: inline-block;
    margin-left: 4px
}

.footer-primary .footer-language {
    display: grid;
    justify-content: center
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-language {
        display: block;
        position: absolute;
        top: -50px
    }
}

.footer-primary #google_translate_element .goog-te-gadget {
    font-size: 0
}

.footer-primary #google_translate_element span {
    display: none !important
}

.footer-primary .footer-socials {
    display: flex;
    gap: 14px;
    align-items: center;
    justify-content: center;
    margin-top: 20px
}

@media screen and (min-width:1024px) {
    .footer-primary .footer-socials {
        margin-top: 0;
        justify-content: flex-start
    }
}

.footer-primary .footer-socials a {
    font-size: 0;
    display: inline-block;
    padding: 4px
}

.footer-primary .footer-socials a:hover svg path {
    fill: #1E7B3C
}

.footer-primary .footer-socials a svg {
    width: 29px;
    height: 26px
}

.footer-primary .footer-socials a svg path {
    transition: fill .3s;
    fill: #1E7B3C
}

.footer-primary .footer-sub {
    background: rgba(203, 194, 183, .15);
    margin-top: 50px
}

.footer-primary .footer-sub .container {
    height: 66px;
    display: flex;
    justify-content: space-between;
    align-items: center
}

@media screen and (max-width:1023px) {
    .footer-primary .footer-sub .container {
        flex-direction: row;
        gap: 20px
    }
}

@media screen and (max-width:767px) {
    .footer-primary .footer-sub .container {
        flex-direction: column;
        height: auto;
        padding: 25px 20px
    }
    .footer-primary .footer-sub .container .sub-lhs {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px
    }
}

@media screen and (max-width:767px) and (max-width:767px) {
    .footer-primary .footer-sub .container .sub-lhs a span {
        display: none
    }
}

.footer-primary .footer-sub .container div a,
.footer-primary .footer-sub .container div span {
    color: #1E7B3C;
    font-family: Aime, serif;
    font-size: .8125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.25rem
}

.footer-primary .footer-sub .container div a {
    transition: color .3s
}

.footer-primary .footer-sub .container div a:hover {
    color: #01afea
}

.search-inner {
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    width: 100%;
    bottom: 100%;
    padding: 15px 10px;
    background-color: #1E7B3C;
    display: none;
    min-width: 320px;
    position: fixed;
    top: 0;
    left: 0;
    right: auto;
    height: 100%;
    z-index: 2000
}

.search-inner #search-close {
    position: absolute;
    right: 30px;
    display: inline-block;
    cursor: pointer;
    transition: all .3s;
    width: 50px;
    height: 50px;
    top: 28px;
    color: hsl(0deg, 0%, 100%)
}

.search-inner #search-close:hover {
    transform: scale(1.2)
}

.search-inner #search-close .wrapper {
    position: relative;
    height: 50px
}

.search-inner #search-close .wrapper span {
    width: 32px;
    height: 2px;
    background-color: hsl(0deg, 0%, 100%);
    display: block;
    position: absolute;
    top: 50%
}

.search-inner #search-close .wrapper span:nth-child(1) {
    transform: rotate(45deg)
}

.search-inner #search-close .wrapper span:nth-child(2) {
    transform: rotate(-45deg)
}

.search-inner input.input {
    width: 100%;
    height: 36px
}

@media screen and (max-width:560px) {
    .search-inner input.input {
        width: 300px
    }
    .search-inner input.input::placeholder {
        font-size: .75rem
    }
}

.search-inner.bottom {
    bottom: auto;
    top: 100%
}

@media screen and (max-width:1439px) {
    .search-inner.bottom {
        box-shadow: 0 0 5px hsl(0deg, 0%, 4%);
        top: -26px;
        width: 100vw;
        padding-top: 63px;
        height: 100vh;
        min-width: 0
    }
}

@media screen and (max-width:450px) {
    .search-inner.bottom {
        top: -18px
    }
}

.form-style-override {
    --form-primary: #2b3a5a;
    --form-accent: #222e48
}

.form-submit-btn {
    padding: 16px 25px 14px !important;
    background-color: rgba(1, 175, 234, 0) !important;
    color: #01afea !important;
    border-radius: 28px !important;
    border: 1px solid #01afea !important;
    transition: background-color .3s, color .3s !important;
    font-family: "Josefin Sans", sans-serif !important;
    font-size: .875rem !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    letter-spacing: .0625rem !important;
    text-transform: uppercase !important
}

.form-submit-btn:hover {
    background-color: #01afea !important;
    color: #fff !important
}

.form-container {
    padding: 0 !important
}

.nav-spacer {
    height: 85px
}

@media screen and (min-width:1024px) {
    .nav-spacer {
        height: 0
    }
}

body.internal-page .nav-spacer {
    height: 85px
}

@media screen and (min-width:1024px) {
    body.internal-page .nav-spacer {
        height: 100px
    }
}

body.backdrop-active .backdrop {
    opacity: 1;
    pointer-events: initial
}

.backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    background: rgba(0, 0, 0, .5);
    opacity: 0;
    pointer-events: none
}

.nav-outer {
    position: -webkit-sticky;
    position: sticky;
    z-index: 99;
    top: 0
}

.nav-wrapper {
    transform: translateZ(0);
    position: relative;
    z-index: 2
}

.nav-primary {
    position: fixed;
    top: 0;
    left: 0;
    color: #1E7B3C;
    right: 0;
    z-index: 100;
    display: flex;
    justify-content: space-between;
    padding: 0;
    transition: border-color .3s, padding .3s, background-color .3s, transform .3s;
    transform: translateY(0);
    height: 85px;
    background-color: #fff
}

@media screen and (min-width:1024px) {
    .nav-primary {
        background-color: transparent;
        border: 0;
        padding: 0 30px;
        height: 100px
    }
}

.internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary,
.menu-stuck:not(.primary-menu-open) .nav-primary,
.search-open .nav-primary,
.show-full-nav .nav-primary {
    background: #fff
}

@media screen and (min-width:1024px) {
    .internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary,
    .menu-stuck:not(.primary-menu-open) .nav-primary,
    .search-open .nav-primary,
    .show-full-nav .nav-primary {
        border-bottom: 1px solid #d6e9f8
    }
}

@media screen and (min-width:1024px) {
    .our-schools-menu-open .nav-primary {
        border-bottom: 1px solid #1d2eb7 !important
    }
}

.homepage .nav-primary,
.is-landing-page .nav-primary {
    position: fixed
}

.js-enabled:not(.is-page-top):not(.menu-stuck) .homepage .nav-primary,
.js-enabled:not(.is-page-top):not(.menu-stuck) .is-landing-page .nav-primary {
    transform: translateY(-100%)
}

.menu-stuck .nav-primary {
    position: fixed
}

.nav-primary .nav-logo {
    opacity: 0;
    pointer-events: none;
    display: flex;
    align-items: center
}

.internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary .nav-logo,
.menu-stuck:not(.primary-menu-open) .nav-primary .nav-logo,
.search-open .nav-primary .nav-logo,
.show-full-nav .nav-primary .nav-logo {
    opacity: 1;
    pointer-events: initial
}

@media screen and (max-width:1023px) {
    .nav-primary .nav-logo {
        opacity: 1;
        pointer-events: initial
    }
}

@media screen and (min-width:1024px) {
    .nav-primary .nav-logo {
        width: 224px
    }
}

.nav-primary .nav-logo a {
    display: flex;
    align-items: center
}

.nav-primary .nav-logo a img {
    height: 100%;
    width: auto
}

@media screen and (max-width:1023px) {
    .nav-primary .nav-logo a img {
        content: var(--logoMobile);
        display: block;
        height: 70px;
        width: auto;
        max-width: min(260px, 55vw)
    }
}

.nav-primary .nav-links {
    display: none;
    align-items: center;
    justify-content: center;
    height: 100%;
    cursor: pointer;
    margin-right: 25px;
    opacity: 0;
    gap: 6px;
    height: 100%;
    transition: opacity .3s
}

@media screen and (min-width:1024px) {
    .nav-primary .nav-links {
        margin: 0 auto;
        display: flex
    }
}

.internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary .nav-links,
.menu-stuck:not(.primary-menu-open) .nav-primary .nav-links,
.search-open .nav-primary .nav-links,
.show-full-nav .nav-primary .nav-links {
    opacity: 1;
    pointer-events: initial
}

.primary-menu-open .nav-primary .nav-links {
    opacity: 1;
    pointer-events: initial
}

@media screen and (min-width:1024px) {
    .primary-menu-open .nav-primary .nav-links {
        margin: 0 30px 0 auto;
        animation: fadeIn .75s ease-in-out
    }
}

.nav-primary .nav-links .nav-link {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color .3s, border-color .3s;
    border-top: 3px solid rgba(29, 46, 183, 0)
}

.nav-primary .nav-links .nav-link:before {
    content: "";
    position: absolute;
    left: -2px;
    top: calc(50% - 2px);
    transform: translateY(-50%);
    height: 16px;
    width: 1px;
    background-color: #f3f8fd;
    transition: opacity .3s
}

.primary-menu-open .nav-primary .nav-links .nav-link:before {
    opacity: .5
}

.nav-primary .nav-links .nav-link:first-child:before {
    display: none
}

.nav-primary .nav-links .nav-link.is-active,
.nav-primary .nav-links .nav-link:hover {
    background-color: #f3f8fd;
    border-color: #1E7B3C
}

.primary-menu-open .nav-primary .nav-links .nav-link.is-active,
.primary-menu-open .nav-primary .nav-links .nav-link:hover {
    background-color: transparent;
    border-color: transparent;
    color: #1E7B3C

}

.primary-menu-open .nav-primary .nav-links .nav-link.is-active>.label,
.primary-menu-open .nav-primary .nav-links .nav-link:hover>.label {
    color: #01afea;
    text-decoration: underline;
    text-underline-offset: 3px
}

.nav-primary .nav-links .nav-link.is-active:before,
.nav-primary .nav-links .nav-link:hover:before {
    opacity: 0
}

.primary-menu-open .nav-primary .nav-links .nav-link.is-active:before,
.primary-menu-open .nav-primary .nav-links .nav-link:hover:before {
    opacity: 1
}

.nav-primary .nav-links .nav-link>.label {
    height: 100%;
    width: 100%;
    padding: 0 clamp(10px, 20px, 1vw);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1d2eb7;
    font-family: "Josefin Sans", sans-serif;
    font-size: clamp(.75rem, 1rem, 1vw);
    font-style: normal;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: .0625rem;
    text-transform: uppercase
}

.primary-menu-open .nav-primary .nav-links .nav-link>.label {
    color: #fff
}

.nav-primary .nav-links .nav-link.mega-dropdown.is-active .dropdown-content {
    transform: translateY(0);
    opacity: 1
}

.nav-primary .nav-rhs {
    display: flex;
    align-items: center;
    height: 100%
}

.nav-primary .nav-rhs .nav-call-wrapper {
    display: flex;
    align-items: center;
    height: 100%
}

.nav-primary .nav-rhs .nav-call {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border-radius: 999px;
    background: #1E7B3C;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: .01em;
    box-shadow: 0 10px 22px rgba(30, 123, 60, .25);
    transition: background-color .2s, transform .2s, box-shadow .2s
}

.nav-primary .nav-rhs .nav-call:hover {
    background: #176532;
    transform: translateY(-1px);
    box-shadow: 0 14px 26px rgba(30, 123, 60, .32)
}

.nav-primary .nav-rhs .nav-call:active {
    transform: translateY(0)
}

.nav-primary .nav-rhs .nav-call-icon {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .18)
}

.nav-primary .nav-rhs .nav-call-icon svg {
    display: block
}

.nav-primary .nav-rhs .nav-call-text {
    display: flex;
    flex-direction: column;
    line-height: 1
}

.nav-primary .nav-rhs .nav-call-label {
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .85
}

.nav-primary .nav-rhs .nav-call-number {
    font-size: .95rem
}

@media screen and (max-width:1023px) {
    .nav-primary .nav-rhs .nav-call-wrapper {
        display: none;
    }

    .nav-primary .nav-rhs .nav-call {
        padding: 8px 10px;
        gap: 8px
    }
    .nav-primary .nav-rhs .nav-call-text {
        display: none
    }
}


@media screen and (min-width:1024px) {
    .nav-primary .nav-rhs .nav-search {
        width: 70px;
        height: 70px
    }
}

.nav-primary .nav-rhs .nav-search.dropdown-search {
    cursor: pointer
}

.nav-primary .nav-rhs .nav-search.dropdown-search svg path {
    fill: #1d2eb7;
    transition: fill .3s
}

@media screen and (min-width:1024px) {
    .nav-primary .nav-rhs .nav-search.dropdown-search svg path {
        fill: #fff
    }
}

.internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary .nav-rhs .nav-search.dropdown-search svg path,
.menu-stuck:not(.primary-menu-open) .nav-primary .nav-rhs .nav-search.dropdown-search svg path,
.search-open .nav-primary .nav-rhs .nav-search.dropdown-search svg path,
.show-full-nav .nav-primary .nav-rhs .nav-search.dropdown-search svg path {
    fill: #1d2eb7
}

.nav-primary .nav-rhs .nav-search.dropdown-search:hover svg path {
    fill: #01afea !important
}

@media screen and (max-width:1023px) {
    .nav-primary .nav-rhs .nav-hamburger-wrapper {
        background-color: #fff;
        width: 75px;
        display: grid;
        place-items: center;
        height: 100%
    }
    .nav-primary .nav-rhs .nav-hamburger-wrapper:hover {
        background-color: #172592
    }
    .nav-primary .nav-rhs .nav-hamburger-wrapper:hover .nav-hamburger span {
        background-color: #fff
    }
    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger-wrapper {
        background-color: #172592
    }
}

.nav-primary .nav-rhs .nav-hamburger {
    background-color: transparent;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    transition: background-color .3s;
    cursor: pointer;
    position: relative
}

@media screen and (min-width:1024px) {
    .nav-primary .nav-rhs .nav-hamburger:hover {
        background-color: #01afea
    }
}

.nav-primary .nav-rhs .nav-hamburger:hover span {
    background-color: #fff
}

.nav-primary .nav-rhs .nav-hamburger:after {
    content: "Close";
    text-transform: uppercase;
    color: #fff;
    position: absolute;
    top: 100%;
    left: 50%;
    font-size: .625rem;
    transform: translateX(-50%);
    opacity: 0
}

@media screen and (max-width:1023px) {
    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger:after {
        opacity: 1
    }
}

@media screen and (min-width:1024px) {
    .nav-primary .nav-rhs .nav-hamburger {
        background-color: #fff;
        width: 70px;
        height: 70px
    }
    .internal-page:not(.landing-page):not(.primary-menu-open) .nav-primary .nav-rhs .nav-hamburger,
    .menu-stuck:not(.primary-menu-open) .nav-primary .nav-rhs .nav-hamburger,
    .search-open .nav-primary .nav-rhs .nav-hamburger,
    .show-full-nav .nav-primary .nav-rhs .nav-hamburger {
        background-color: #1E7B3C
    }
}

.nav-primary .nav-rhs .nav-hamburger span {
    background: #1E7B3C;
    display: block;
    height: 2px;
    width: 22px;
    border-radius: 6px;
    transition: background-color .3s, transform .3s
}

.nav-primary .nav-rhs .nav-hamburger-wrapper {
    display: none
}

@media screen and (max-width:1023px) {
    .nav-primary .nav-links {
        position: fixed;
        top: 100px;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        gap: 0;
        margin: 0;
        padding: 10px 18px 14px;
        min-height: calc(100vh - 100px);
        background: #fff;
        border-top: 1px solid #d6e9f8;
        box-shadow: 0 18px 36px rgba(0, 0, 0, .12);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        z-index: 101;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
        transform: translateY(-10px);
        transition: opacity .25s ease, transform .25s ease
    }

    .primary-menu-open .nav-primary .nav-links {
        visibility: visible;
        opacity: 1;
        pointer-events: initial;
        transform: translateY(0)
    }

    .nav-primary .nav-links .nav-link {
        height: auto;
        justify-content: flex-start;
        border-top: 0;
        border-bottom: 1px solid #edf3f9
    }

    .nav-primary .nav-links .nav-link:last-child {
        border-bottom: 0
    }

    .nav-primary .nav-links .nav-link:before {
        display: none
    }

    .nav-primary .nav-links .nav-link>.label {
        justify-content: flex-start;
        padding: 12px 0;
        font-size: .8rem
    }

    .nav-primary .nav-rhs {
        gap: 6px
    }

    .nav-primary .nav-rhs .nav-hamburger-wrapper {
        display: grid
    }

    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger span {
        background-color: #fff
    }

    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger span:nth-child(1) {
        transform: translateY(8px) rotate(45deg)
    }

    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger span:nth-child(2) {
        transform: scaleX(0)
    }

    .primary-menu-open .nav-primary .nav-rhs .nav-hamburger span:nth-child(3) {
        transform: translateY(-8px) rotate(-45deg)
    }
}





