.custom__edit--info {
    position: fixed;
    width: 40px;
    height: 40px;
    bottom: 1em;
    right: 1em;
    z-index: 3000;
    border-radius: 50%;
    padding: 0;
    text-align: center;
    margin: 1em;
    background: #745b99;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35)
}

.custom__edit--info svg {
    line-height: 40px;
    height: 40px;
    width: 40px;
    cursor: pointer
}

.custom__edit--info div {
    position: absolute;
    display: block;
    white-space: nowrap;
    bottom: 0;
    right: 100%;
    border-radius: 4px;
    padding: 0 2em;
    -webkit-box-shadow: inherit;
    box-shadow: inherit;
    background: inherit;
    opacity: 0;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    visibility: hidden;
    -webkit-transition: opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease;
    transition: opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease;
    -o-transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s;
    transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s;
    transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease
}

.custom__edit--info p {
    white-space: nowrap;
    line-height: 1.8;
    text-align: left;
    text-transform: none
}

.custom__edit--info small {
    margin-right: 5px;
    opacity: 0.75;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.custom__edit--info:hover div {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(-1em);
    -ms-transform: translateX(-1em);
    transform: translateX(-1em);
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s
}

@-webkit-keyframes marquee {
    0% {
        -webkit-transform: translateX(100vw);
        transform: translateX(100vw)
    }

    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@keyframes marquee {
    0% {
        -webkit-transform: translateX(100vw);
        transform: translateX(100vw)
    }

    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.custom__edit--info {
    position: fixed;
    width: 40px;
    height: 40px;
    bottom: 1em;
    right: 1em;
    z-index: 3000;
    border-radius: 50%;
    padding: 0;
    text-align: center;
    margin: 1em;
    background: #745b99;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.35)
}

.custom__edit--info svg {
    line-height: 40px;
    height: 40px;
    width: 40px;
    cursor: pointer
}

.custom__edit--info div {
    position: absolute;
    display: block;
    white-space: nowrap;
    bottom: 0;
    right: 100%;
    border-radius: 4px;
    padding: 0 2em;
    -webkit-box-shadow: inherit;
    box-shadow: inherit;
    background: inherit;
    opacity: 0;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    visibility: hidden;
    -webkit-transition: opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease;
    transition: opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease;
    -o-transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s;
    transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s;
    transition: transform 0.2s ease, opacity 0.2s ease, visibility 0s ease 0.2s, -webkit-transform 0.2s ease
}

.custom__edit--info p {
    white-space: nowrap;
    line-height: 1.8;
    text-align: left;
    text-transform: none
}

.custom__edit--info small {
    margin-right: 5px;
    opacity: 0.75;
    text-transform: uppercase;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.custom__edit--info:hover div {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(-1em);
    -ms-transform: translateX(-1em);
    transform: translateX(-1em);
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s
}

@keyframes marquee {
    0% {
        -webkit-transform: translateX(100vw);
        transform: translateX(100vw)
    }

    to {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.custom__border__dash {
    display: none
}

.mason--earlyYears .custom__border__dash {
    position: absolute;
    inset: 0;
    -webkit-transform: scale(1.052);
    -ms-transform: scale(1.052);
    transform: scale(1.052);
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.mason--earlyYears .custom__border__dash svg {
    display: none
}

@media (min-width:769px) {
    .mason--earlyYears .custom__border__dash {
        -webkit-transform: scale(1.082);
        -ms-transform: scale(1.082);
        transform: scale(1.082)
    }
}

@media (min-width:950px) {
    .mason--earlyYears .custom__border__dash {
        display: block;
        -webkit-transform: scale(1.092);
        -ms-transform: scale(1.092);
        transform: scale(1.092);
        border: 3px solid var(--col-tint--normal);
        border-radius: var(--radius-lg)
    }
}

.grouped__block {
    overflow: hidden;
    max-width: 1480px;
    margin: auto
}

.grouped__block__senior {
    margin-top: 6em
}

@media (min-width:769px) {
    .grouped__block {
        border-radius: var(--radius-lg)
    }

    .grouped__block__ey {
        border-radius: var(--radius-lg)
    }
}

.feature__media__image,
.next__step__media__image {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 0;
    background-color: #000;
    overflow: hidden
}

.mason--admin .feature__media__image,
.mason--admin .next__step__media__image {
    z-index: 2
}

.feature__media__image img[loading=lazy].lazy--loaded,
.next__step__media__image img[loading=lazy].lazy--loaded {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0.8;
    -webkit-transition: opacity 400ms ease, -webkit-transform 400ms ease;
    transition: opacity 400ms ease, -webkit-transform 400ms ease;
    -o-transition: opacity 400ms ease, transform 400ms ease;
    transition: opacity 400ms ease, transform 400ms ease;
    transition: opacity 400ms ease, transform 400ms ease, -webkit-transform 400ms ease
}

.feature__media__image:before,
.next__step__media__image:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 50%;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    z-index: 1
}

.feature__media__image:after,
.next__step__media__image:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.35;
    background: -webkit-radial-gradient(center, transparent, #000);
    background: -o-radial-gradient(center, transparent, #000);
    background: radial-gradient(to center, transparent, #000);
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

.feature__media__video,
.next__step__video {
    position: absolute;
    inset: 0
}

.feature__media__video__popout,
.next__step__media__video__popout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    padding: 7% 50px;
    width: 100%;
    height: 100%;
    z-index: 4
}

.feature__media__video__popout:focus .feature__media__video__popout__icon,
.feature__media__video__popout:focus .next__step__media__video__popout__icon,
.feature__media__video__popout:hover .feature__media__video__popout__icon,
.feature__media__video__popout:hover .next__step__media__video__popout__icon,
.next__step__media__video__popout:focus .feature__media__video__popout__icon,
.next__step__media__video__popout:focus .next__step__media__video__popout__icon,
.next__step__media__video__popout:hover .feature__media__video__popout__icon,
.next__step__media__video__popout:hover .next__step__media__video__popout__icon {
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    transform: scale(0.95)
}

.feature__media__video__popout:focus .video__label,
.feature__media__video__popout:hover .video__label,
.next__step__media__video__popout:focus .video__label,
.next__step__media__video__popout:hover .video__label {
    opacity: 1
}

.feature__media__video__popout:focus:after,
.feature__media__video__popout:hover:after,
.next__step__media__video__popout:focus:after,
.next__step__media__video__popout:hover:after {
    position: absolute;
    content: "";
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
    opacity: 1
}

.feature__media__video__popout:after,
.next__step__media__video__popout:after {
    z-index: 2;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border: 2px solid #fff;
    opacity: 0;
    -webkit-transition: 300ms ease;
    -o-transition: 300ms ease;
    transition: 300ms ease
}

.mason--admin .feature__media__video__popout,
.mason--admin .next__step__media__video__popout {
    pointer-events: none
}

.mason--admin .feature__media__video__popout .feature__media__video__popout__icon,
.mason--admin .feature__media__video__popout .next__step__media__video__popout__icon,
.mason--admin .next__step__media__video__popout .feature__media__video__popout__icon,
.mason--admin .next__step__media__video__popout .next__step__media__video__popout__icon {
    pointer-events: auto
}

.feature__media__video__popout__icon,
.next__step__media__video__popout__icon {
    position: absolute;
    bottom: 20%;
    width: clamp(45px, 5vw, 70px);
    height: auto;
    aspect-ratio: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    -webkit-transition: -webkit-transform 400ms ease;
    transition: -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease;
    transition: transform 400ms ease;
    transition: transform 400ms ease, -webkit-transform 400ms ease
}

@media (min-width:769px) {

    .feature__media__video__popout__icon,
    .next__step__media__video__popout__icon {
        bottom: 12%
    }
}

.feature__media__video__popout__icon:before,
.next__step__media__video__popout__icon:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 2px solid var(--col-pri);
    background-color: rgba(var(--col-pri--opac), 0.3);
    border-radius: 50%;
    -webkit-box-shadow: var(--shadow-smaller);
    box-shadow: var(--shadow-smaller);
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease
}

.feature__media__video__popout__icon svg,
.next__step__media__video__popout__icon svg {
    position: relative;
    -webkit-box-shadow: var(--shadow-sm);
    box-shadow: var(--shadow-sm);
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease;
    -webkit-transform: translateX(2px);
    -ms-transform: translateX(2px);
    transform: translateX(2px)
}

.video__label {
    position: absolute;
    bottom: 12%;
    left: 0;
    right: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto;
    z-index: 1;
    color: #fff;
    text-transform: uppercase;
    font-size: 0.875em;
    letter-spacing: 0.15em;
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

@media (min-width:769px) {
    .video__label {
        bottom: 7%
    }
}

.feature__media:not(.feature__media--autoplay) .feature__media__video__content,
.feature__media:not(.feature__media--autoplay) .next__step__video__content,
.next__step__media:not(.next__step__media--autoplay) .feature__media__video__content,
.next__step__media:not(.next__step__media--autoplay) .next__step__video__content {
    display: none
}

.feature__media:not(.feature__media--autoplay) .feature__media__video__ctrls,
.feature__media:not(.feature__media--autoplay) .next__step__video__ctrls,
.next__step__media:not(.next__step__media--autoplay) .feature__media__video__ctrls,
.next__step__media:not(.next__step__media--autoplay) .next__step__video__ctrls {
    height: 100%
}

.feature__media.feature__media--autoplay .feature__media__video,
.feature__media.feature__media--autoplay .next__step__video,
.next__step__media.next__step__media--autoplay .feature__media__video,
.next__step__media.next__step__media--autoplay .next__step__video {
    overflow: hidden
}

.feature__media.feature__media--autoplay .feature__media__video__ctrls,
.feature__media.feature__media--autoplay .next__step__video__ctrls,
.next__step__media.next__step__media--autoplay .feature__media__video__ctrls,
.next__step__media.next__step__media--autoplay .next__step__video__ctrls {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 0.5em
}

.phases__welcome__list {
    padding-block: clamp(0em, 3vw, 4em);
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .phases__welcome__list {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.phases__welcome__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: clamp(2em, 5%, 5em)
}

.mason--earlyYears .phases__welcome__item {
    gap: clamp(2em, 8%, 5em)
}

.phases__welcome__item:nth-child(2) {
    margin-top: 3em
}

.phases__welcome__content {
    position: relative;
    width: 100%;
    container-type: inline-size
}

svg.db__date__watermark {
    display: none;
    position: absolute;
    top: auto;
    bottom: 0;
    right: 0;
    max-width: clamp(200px, 50vw, 495.3px);
    height: auto;
    -webkit-transform: translateX(-10%);
    -ms-transform: translateX(-10%);
    transform: translateX(-10%);
    opacity: 0;
    -webkit-transition: opacity 1.2s ease, -webkit-transform 1s ease;
    transition: opacity 1.2s ease, -webkit-transform 1s ease;
    -o-transition: opacity 1.2s ease, transform 1s ease;
    transition: opacity 1.2s ease, transform 1s ease;
    transition: opacity 1.2s ease, transform 1s ease, -webkit-transform 1s ease
}

.mason--dbJuniorSchool svg.db__date__watermark {
    display: block
}

svg.db__date__watermark path {
    fill: var(--col-pri)
}

.inview svg.db__date__watermark {
    -webkit-transform: translateX(10%);
    -ms-transform: translateX(10%);
    transform: translateX(10%);
    opacity: 0.1
}

.phases__welcome__content__region {
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

.phases__welcome__content__region .phases__welcome__content__text {
    line-height: 1.5
}

.phases__welcome__content__region .phases__welcome__content__author {
    margin: 0
}

.phases__welcome__content__region .phases__welcome__content__author__title {
    margin: 0.2em 0 0;
    color: var(--col-shade--normal)
}

.phases__welcome__content__region .phases__welcome__button__link {
    margin-top: 2.5em
}

.phases__welcome__content__region .phases__welcome__button__link:has(a[href=""]) {
    display: none
}

.phases__welcome__media {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 540/500;
    max-width: 330px
}

.phases__welcome__media__border__dash {
    display: block
}

.phases__welcome__media__image {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
    background: var(--col-pri);
    border-radius: var(--radius-lg);
    overflow: hidden;
    -webkit-box-shadow: var(--shadow);
    box-shadow: var(--shadow)
}

.mason--admin .phases__welcome__media__image {
    z-index: 2
}

.phases__welcome__media__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (min-width:950px) {
    .phases__welcome__item {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .phases__welcome__item:nth-child(2) {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        padding-left: var(--accent-gap)
    }

    .phases__welcome__content {
        width: 45%;
        max-width: 520px;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    svg.db__date__watermark {
        top: 50%;
        -webkit-transform: translateY(-50%) translateX(-10%);
        -ms-transform: translateY(-50%) translateX(-10%);
        transform: translateY(-50%) translateX(-10%)
    }

    .inview svg.db__date__watermark {
        -webkit-transform: translateY(-50%) translateX(10%);
        -ms-transform: translateY(-50%) translateX(10%);
        transform: translateY(-50%) translateX(10%);
        opacity: 0.1
    }

    .phases__welcome__media {
        max-width: 540px;
        -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch;
        max-height: 600px
    }
}

@media (min-width:1301px) {
    svg.db__date__watermark {
        -webkit-transform: translateY(-50%) translateX(10%);
        -ms-transform: translateY(-50%) translateX(10%);
        transform: translateY(-50%) translateX(10%)
    }

    .inview svg.db__date__watermark {
        -webkit-transform: translateY(-50%) translateX(25%);
        -ms-transform: translateY(-50%) translateX(25%);
        transform: translateY(-50%) translateX(25%)
    }
}

.early__years__locations {
    position: relative;
    background-color: rgba(var(--col-sec--opac), 0.3);
    overflow: hidden;
    margin-block: 3em
}

.early__years__locations:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--col-sec--opac), 1)), to(rgba(var(--col-sec--opac), 0)));
    background: -webkit-linear-gradient(top, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: -o-linear-gradient(top, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: linear-gradient(to bottom, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0))
}

@media (min-width:415px) {
    .early__years__locations {
        border-radius: var(--radius-lg)
    }
}

.early__years__locations__section__container {
    padding-top: 5.5em;
    padding-bottom: 2em;
    margin-inline: 5%
}

@media (min-width:1287.6px) {
    .early__years__locations__section__container {
        padding-inline: 0;
        margin-left: calc(50% - 580px);
        margin-right: calc(50% - 580px)
    }
}

.early__years__locations__header {
    padding-inline: 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

@media (min-width:1287.6px) {
    .early__years__locations__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.early__years__locations__header .ey__locations__navigation {
    margin-block: 0
}

.EY__location__list {
    overflow: visible;
    padding-bottom: 5em
}

.EY__location__item.swiper-slide {
    margin-top: 1em;
    padding-block: 1.6em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

@media (min-width:415px) {
    .EY__location__item.swiper-slide {
        border: 3px solid var(--col-tint--normal);
        border-radius: var(--radius-lg)
    }
}

.EY__location__item__block {
    max-width: 540px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1em
}

@media (min-width:415px) {
    .EY__location__item__block {
        gap: 2em
    }
}

.EY__location__item__image__container {
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto
}

.EY__location__item__image__container .EY__location__item__image {
    aspect-ratio: 610 / 410;
    margin-inline: auto;
    height: auto;
    border-radius: var(--radius-md);
    overflow: hidden
}

.EY__location__item__image__container .EY__location__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.EY__location__item__image__container .EY__location__item__image__border__dash {
    display: none
}

@media (min-width:415px) {
    .EY__location__item__image__container {
        width: 90%
    }
}

.EY__location__item__content {
    padding: 2.4em;
    padding-inline: clamp(1em, 4.8cqw, 2.4em);
    background-color: rgba(var(--col-off-white--opac), 0.7);
    border: 2px solid var(--col-pri);
    border-radius: var(--radius-md);
    width: 90vw
}

@media (min-width:415px) {
    .EY__location__item__content {
        width: 90%
    }
}

.EY__location__item__content .EY__location__item__location__title {
    font-size: 1.875em;
    margin-block: 0;
    min-height: 2lh
}

.EY__location__item__content p.EY__location__item__location__details {
    line-height: 1.5;
    min-height: 8lh;
    max-height: 8lh;
    overflow: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding-right: 0.5em
}

.EY__location__item__content p.EY__location__item__location__details::-webkit-scrollbar {
    width: 8px
}

.EY__location__item__content p.EY__location__item__location__details::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.EY__location__item__content p.EY__location__item__location__details::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.EY__location__item__content .EY__location__item__link {
    margin-top: 1em
}

@media (min-width:950px) {
    .EY__location__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 2em
    }

    .EY__location__item .EY__location__item__image__container {
        border-radius: var(--radius-md);
        max-width: 610px;
        width: 90%;
        margin: 0
    }

    .EY__location__item .EY__location__item__image {
        border-radius: var(--radius-lg)
    }

    .EY__location__item__content {
        width: 90%;
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content;
        margin-top: 0;
        border-radius: var(--radius-md)
    }
}

.ey__nursery__section {
    position: relative
}

.ey__nursery__section:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0
}

.ey__nursery__header {
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .ey__nursery__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.ey__nursery__header .ey__nursery__header__info .ey__nursery__header__text__region {
    margin-top: 1em;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

.ey__nursery__header .ey__nursery__header__info .ey__nursery__header__text__region p {
    line-height: 1.5
}

.ey__nursery__header .ey__nursery__header__info .ey__nursery__header__text__region p:last-child {
    margin-bottom: 0
}

.ey__nursery__header .ey__nursery__header__info .ey__nursery__content__button__region {
    margin-top: 3em;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s;
    display: none
}

@media (min-width:950px) {
    .ey__nursery__header .ey__nursery__header__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        gap: 2em
    }

    .ey__nursery__header .ey__nursery__header__info .ey__nursery__header__text__region {
        max-width: clamp(400px, 49vw, 720px)
    }
}

.ey__nursery__image__links {
    position: relative;
    z-index: 1;
    padding-block: 1em;
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .ey__nursery__image__links {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.ey__nursery__image__links .ey__nursery__stages__navigation.swiper__navigation__horz {
    margin-block: 0;
    margin-top: 1em
}

.ey__nursery__image__links .ey__nursery__image__links__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1em;
    padding-top: 1.4em;
    padding-bottom: 1.8em;
    overflow: visible
}

.ey__nursery__image__links .ey__nursery__image__links__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0.7em;
    -webkit-transition: margin 400ms ease;
    -o-transition: margin 400ms ease;
    transition: margin 400ms ease
}

.ey__nursery__image__links .ey__nursery__image__links__item.swiper-slide {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

.ey__nursery__image__links .ey__nursery__image__links__item .ey__nursery__image__links__item__link {
    opacity: 0;
    scale: 0.5;
    -webkit-transition: scale 1s ease, opacity 1s ease;
    -o-transition: scale 1s ease, opacity 1s ease;
    transition: scale 1s ease, opacity 1s ease
}

.ey__nursery__image__links .ey__nursery__image__links__item:first-child .ey__nursery__image__links__item__link {
    -webkit-transition-delay: 1400ms;
    -o-transition-delay: 1400ms;
    transition-delay: 1400ms
}

.ey__nursery__image__links .ey__nursery__image__links__item:nth-child(2) .ey__nursery__image__links__item__link {
    -webkit-transition-delay: 1900ms;
    -o-transition-delay: 1900ms;
    transition-delay: 1900ms
}

.ey__nursery__image__links .ey__nursery__image__links__item:nth-child(3) .ey__nursery__image__links__item__link {
    -webkit-transition-delay: 2400ms;
    -o-transition-delay: 2400ms;
    transition-delay: 2400ms
}

.ey__nursery__image__links .ey__nursery__image__links__item:nth-child(4) .ey__nursery__image__links__item__link {
    -webkit-transition-delay: 2900ms;
    -o-transition-delay: 2900ms;
    transition-delay: 2900ms
}

.ey__nursery__image__links .ey__nursery__image__links__item:nth-child(5) .ey__nursery__image__links__item__link {
    -webkit-transition-delay: 3400ms;
    -o-transition-delay: 3400ms;
    transition-delay: 3400ms
}

.inview .ey__nursery__image__links .ey__nursery__image__links__item .ey__nursery__image__links__item__link {
    opacity: 1;
    scale: 1
}

@media (min-width:769px) {
    .ey__nursery__image__links .ey__nursery__image__links__item:has(.ey__nursery__image__links__item__link:hover) {
        margin-inline: 2em
    }
}

.ey__nursery__image__links .ey__nursery__image__links__item:has(.ey__nursery__image__links__item__link:hover) .ey__nursery__image__links__item__border__dash {
    -webkit-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
    opacity: 1
}

.ey__nursery__image__links .ey__nursery__image__links__item__border__dash {
    display: none
}

@media (min-width:950px) {
    .ey__nursery__image__links .ey__nursery__image__links__item__border__dash {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        opacity: 0;
        -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
        transform: scale(0.9);
        -webkit-transition: opacity 400ms ease, -webkit-transform 400ms ease;
        transition: opacity 400ms ease, -webkit-transform 400ms ease;
        -o-transition: transform 400ms ease, opacity 400ms ease;
        transition: transform 400ms ease, opacity 400ms ease;
        transition: transform 400ms ease, opacity 400ms ease, -webkit-transform 400ms ease;
        border: 3px solid var(--col-tint--normal);
        border-radius: var(--radius-lg);
        pointer-events: none
    }

    .ey__nursery__image__links .ey__nursery__image__links__item__border__dash svg {
        display: none
    }
}

.ey__nursery__image__links .ey__nursery__image__links__item__link {
    position: relative;
    width: calc(33% - 1em);
    width: 100%;
    min-width: clamp(300px, 25cqw, 360px);
    min-height: 200px;
    max-width: clamp(360px, 90vw, 450px);
    aspect-ratio: 360 / 385;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.ey__nursery__image__links .ey__nursery__image__links__item__link:focus .ey__nursery__image__links__item__image img,
.ey__nursery__image__links .ey__nursery__image__links__item__link:hover .ey__nursery__image__links__item__image img {
    opacity: 0.5
}

@media (min-width:769px) {

    .ey__nursery__image__links .ey__nursery__image__links__item__link:focus .ey__nursery__image__links__item__image,
    .ey__nursery__image__links .ey__nursery__image__links__item__link:hover .ey__nursery__image__links__item__image {
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05)
    }
}

.ey__nursery__image__links .ey__nursery__image__links__item__link:focus .ey__nursery__image__links__item__overlay,
.ey__nursery__image__links .ey__nursery__image__links__item__link:hover .ey__nursery__image__links__item__overlay {
    opacity: 0.4
}

.ey__nursery__image__links .ey__nursery__image__links__item__link:focus .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro,
.ey__nursery__image__links .ey__nursery__image__links__item__link:hover .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro {
    opacity: 1;
    max-height: 8lh;
    margin-bottom: 2em
}

.ey__nursery__image__links .ey__nursery__image__links__item__link:focus .expand__button svg,
.ey__nursery__image__links .ey__nursery__image__links__item__link:hover .expand__button svg {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg)
}

.ey__nursery__image__links .ey__nursery__image__links__item__link .expand__button {
    position: absolute;
    top: 5%;
    right: 5%;
    width: 50px
}

.ey__nursery__image__links .ey__nursery__image__links__item__link .expand__button:before {
    background-color: rgba(var(--col-pri--opac), 0.5)
}

.ey__nursery__image__links .ey__nursery__image__links__item__link .expand__button svg {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.ey__nursery__image__links .ey__nursery__image__links__item__image {
    background-color: #000;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border-radius: var(--radius-sm);
    overflow: hidden;
    -webkit-transition: -webkit-transform 400ms ease;
    transition: -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease;
    transition: transform 400ms ease;
    transition: transform 400ms ease, -webkit-transform 400ms ease
}

.ey__nursery__image__links .ey__nursery__image__links__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: opacity 600ms ease;
    -o-transition: opacity 600ms ease;
    transition: opacity 600ms ease
}

.ey__nursery__image__links .ey__nursery__image__links__item__image .ey__nursery__image__links__item__overlay {
    position: absolute;
    inset: 0
}

.ey__nursery__image__links .ey__nursery__image__links__item__image .ey__nursery__image__links__item__overlay:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 51%;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    -webkit-transition: opacity 600ms ease;
    -o-transition: opacity 600ms ease;
    transition: opacity 600ms ease
}

.ey__nursery__image__links .ey__nursery__image__links__item__content {
    position: absolute;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    color: #fff;
    padding-bottom: clamp(1em, 10%, 2em);
    padding-inline: clamp(1.5em, 2.3cqw, 4em)
}

.ey__nursery__image__links .ey__nursery__image__links__item__content h4.ey__nursery__image__links__item__content__title {
    margin: 0;
    font-size: clamp(1.375em, 2.5cqw, 2.1875em);
    margin-bottom: 0.3em;
    font-weight: 500
}

.ey__nursery__image__links .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro {
    margin: 0;
    line-height: 1.5;
    opacity: 0;
    max-height: 6lh;
    overflow: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    max-height: 5px;
    -webkit-transition: max-height 600ms ease, opacity 600ms ease, margin 600ms ease;
    -o-transition: max-height 600ms ease, opacity 600ms ease, margin 600ms ease;
    transition: max-height 600ms ease, opacity 600ms ease, margin 600ms ease
}

.ey__nursery__image__links .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro::-webkit-scrollbar {
    width: 8px
}

.ey__nursery__image__links .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.ey__nursery__image__links .ey__nursery__image__links__item__content p.ey__nursery__image__links__item__content__intro::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

@media (min-width:769px) {
    .ey__nursery__image__links .ey__nursery__image__links__list {
        gap: 2em
    }

    .ey__nursery__image__links .ey__nursery__image__links__item__link {
        max-width: 360px;
        aspect-ratio: 360 / 440
    }
}

@media (min-width:950px) {
    .ey__nursery__image__links .ey__nursery__image__links__item__image {
        border-radius: var(--radius-lg)
    }
}

@media (min-width:1025px) {
    .ey__nursery__image__links .ey__nursery__image__links__list {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }
}

.db__junior__curriculum .curriculum {
    margin-top: 0;
    padding-top: clamp(4em, 10vw, 7em);
    border-radius: 0 0 var(--radius-lg) var(--radius-lg)
}

.ey__curriculum .curriculum {
    padding-top: 2.5em
}

@media (min-width:950px) {
    .ey__curriculum .curriculum {
        margin-bottom: 2em
    }
}

.junior__curriculum .curriculum,
.senior__curriculum .curriculum,
.sixth__form__curriculum .curriculum {
    padding-top: 11em;
    margin-top: -6em
}

.curriculum {
    position: relative;
    z-index: 2;
    padding-top: 3em;
    padding-bottom: clamp(2em, 5vw, 5em);
    position: relative;
    border-radius: 0;
    max-width: 1480px;
    margin: auto;
    overflow: hidden;
    background-color: var(--col-shade--normal)
}

.curriculum:after {
    display: none
}

@media (min-width:1025px) {
    .curriculum:after {
        display: block;
        pointer-events: none;
        position: absolute;
        content: "";
        top: auto;
        right: 0;
        bottom: 0;
        left: auto;
        width: clamp(545px, 53%, 815px);
        height: 150%;
        margin: auto;
        background: rgba(var(--col-black--opac), 0.5);
        z-index: 0
    }
}

@media (min-width:1301px) {
    .curriculum:after {
        width: clamp(545px, 55%, 815px)
    }
}

.mason--earlyYears .curriculum {
    overflow: visible;
    background: var(--col-sec)
}

.mason--earlyYears .curriculum:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    height: 90%;
    margin: auto;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--col-off-white--opac), 1)), to(rgba(var(--col-off-white--opac), 0)));
    background: -webkit-linear-gradient(top, rgba(var(--col-off-white--opac), 1), rgba(var(--col-off-white--opac), 0));
    background: -o-linear-gradient(top, rgba(var(--col-off-white--opac), 1), rgba(var(--col-off-white--opac), 0));
    background: linear-gradient(to bottom, rgba(var(--col-off-white--opac), 1), rgba(var(--col-off-white--opac), 0));
    z-index: 0
}

.mason--earlyYears .curriculum:after {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(var(--col-pri--opac), 0.3)), to(transparent));
    background: -webkit-linear-gradient(bottom, rgba(var(--col-pri--opac), 0.3), transparent);
    background: -o-linear-gradient(bottom, rgba(var(--col-pri--opac), 0.3), transparent);
    background: linear-gradient(to top, rgba(var(--col-pri--opac), 0.3), transparent);
    border-radius: 0 0 var(--radius-lg) 0
}

.curriculum__section__content__block {
    position: relative;
    padding-inline: 5%;
    color: #fff
}

@media (min-width:1287.6px) {
    .curriculum__section__content__block {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.mason--earlyYears .curriculum__section__content__block {
    color: #000
}

.curriculum__section__content__block .section__header .section__titles #curriculum__title__prefix {
    color: var(--col-sec)
}

.mason--earlyYears .curriculum__section__content__block .section__header .section__titles #curriculum__title__prefix {
    color: var(--col-shade--dark)
}

.mason--dbJuniorSchool .curriculum__section__content__block .section__header .section__titles #curriculum__title__prefix {
    color: var(--col-db-tint-light)
}

.curriculum__section__content__block .section__header .section__titles #curriculum__title {
    color: #fff
}

.mason--earlyYears .curriculum__section__content__block .section__header .section__titles #curriculum__title {
    color: var(--col-black)
}

.curriculum__section__content__block .curriculum__section__content .curriculum__section__text__region p {
    line-height: 1.5
}

.curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region {
    margin-top: 2em
}

.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>a,
.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>span {
    color: var(--col-shade--dark)
}

.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>a:before,
.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>span:before {
    border-color: var(--col-off-white);
    background-color: rgba(var(--col-off-white--opac), 0.3)
}

.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>a:hover,
.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>span:hover {
    color: var(--col-shade--darkest)
}

.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>a:hover:before,
.mason--earlyYears .curriculum__section__content__block .curriculum__section__content .curriculum__content__button__region .button__link>span:hover:before {
    background-color: rgba(var(--col-off-white--opac), 0.8)
}

.curriculum__lists {
    position: relative;
    margin-block: 3em;
    margin-right: 5%
}

.curriculum__lists__container {
    padding-inline: 5vw
}

p.curriculum__details__item__title,
p.curriculum__subject__item__title {
    font-size: clamp(1.25em, 8vw, 1.5625em);
    text-transform: capitalize;
    margin: 0;
    color: var(--col-sec)
}

.mason--earlyYears p.curriculum__details__item__title,
.mason--earlyYears p.curriculum__subject__item__title {
    color: var(--col-shade--darkest)
}

.curriculum__navigation {
    position: absolute;
    top: 180px;
    margin: 0;
    height: 50px !important
}

.curriculum__navigation .curriculum__pagination {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
}

.curriculum__navigation .curriculum__pagination .swiper-pagination-bullet {
    border-color: var(--col-sec)
}

.curriculum__navigation .curriculum__pagination span.swiper-pagination-bullet-active {
    border-color: var(--col-pri);
    background-color: var(--col-pri)
}

.mason--earlyYears .curriculum__navigation .curriculum__pagination .swiper-pagination-bullet {
    border-color: var(--col-shade--normal)
}

.mason--earlyYears .curriculum__navigation .curriculum__pagination span.swiper-pagination-bullet-active {
    border-color: var(--col-shade--normal);
    background-color: var(--col-shade--normal)
}

.curriculum__navigation .swiper__navigation__button {
    color: var(--col-pri)
}

.mason--earlyYears .curriculum__navigation .swiper__navigation__button {
    color: var(--col-shade--normal)
}

@media (min-width:769px) {
    .curriculum__navigation {
        top: auto;
        bottom: 0
    }
}

@media (min-width:950px) {
    .curriculum__navigation {
        top: 0
    }
}

@media (min-width:1350px) {
    .curriculum__navigation {
        margin-right: 5em
    }
}

.curriculum__subject__title__list__container {
    min-height: 160px;
    overflow: hidden;
    position: static
}

.curriculum__subject__title__list {
    min-height: 60px;
    overflow: visible;
    position: static
}

.curriculum__subject__title__list:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.curriculum__subject__title__list .curriculum__subject__item .curriculum__subject__item__container {
    opacity: 0;
    -webkit-transform: translateY(5px);
    -ms-transform: translateY(5px);
    transform: translateY(5px);
    -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
    transition: opacity 1s ease, -webkit-transform 1s ease;
    -o-transition: transform 1s ease, opacity 1s ease;
    transition: transform 1s ease, opacity 1s ease;
    transition: transform 1s ease, opacity 1s ease, -webkit-transform 1s ease
}

.curriculum__subject__title__list .curriculum__subject__item:first-child .curriculum__subject__item__container {
    -webkit-transition-delay: 1000ms;
    -o-transition-delay: 1000ms;
    transition-delay: 1000ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(2) .curriculum__subject__item__container {
    -webkit-transition-delay: 1300ms;
    -o-transition-delay: 1300ms;
    transition-delay: 1300ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(3) .curriculum__subject__item__container {
    -webkit-transition-delay: 1600ms;
    -o-transition-delay: 1600ms;
    transition-delay: 1600ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(4) .curriculum__subject__item__container {
    -webkit-transition-delay: 1900ms;
    -o-transition-delay: 1900ms;
    transition-delay: 1900ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(5) .curriculum__subject__item__container {
    -webkit-transition-delay: 2200ms;
    -o-transition-delay: 2200ms;
    transition-delay: 2200ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(6) .curriculum__subject__item__container {
    -webkit-transition-delay: 2500ms;
    -o-transition-delay: 2500ms;
    transition-delay: 2500ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(7) .curriculum__subject__item__container {
    -webkit-transition-delay: 2800ms;
    -o-transition-delay: 2800ms;
    transition-delay: 2800ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(8) .curriculum__subject__item__container {
    -webkit-transition-delay: 3100ms;
    -o-transition-delay: 3100ms;
    transition-delay: 3100ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(9) .curriculum__subject__item__container {
    -webkit-transition-delay: 3400ms;
    -o-transition-delay: 3400ms;
    transition-delay: 3400ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(10) .curriculum__subject__item__container {
    -webkit-transition-delay: 3700ms;
    -o-transition-delay: 3700ms;
    transition-delay: 3700ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(11) .curriculum__subject__item__container {
    -webkit-transition-delay: 4000ms;
    -o-transition-delay: 4000ms;
    transition-delay: 4000ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(12) .curriculum__subject__item__container {
    -webkit-transition-delay: 4300ms;
    -o-transition-delay: 4300ms;
    transition-delay: 4300ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(13) .curriculum__subject__item__container {
    -webkit-transition-delay: 4600ms;
    -o-transition-delay: 4600ms;
    transition-delay: 4600ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(14) .curriculum__subject__item__container {
    -webkit-transition-delay: 4900ms;
    -o-transition-delay: 4900ms;
    transition-delay: 4900ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(15) .curriculum__subject__item__container {
    -webkit-transition-delay: 5200ms;
    -o-transition-delay: 5200ms;
    transition-delay: 5200ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(16) .curriculum__subject__item__container {
    -webkit-transition-delay: 5500ms;
    -o-transition-delay: 5500ms;
    transition-delay: 5500ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(17) .curriculum__subject__item__container {
    -webkit-transition-delay: 5800ms;
    -o-transition-delay: 5800ms;
    transition-delay: 5800ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(18) .curriculum__subject__item__container {
    -webkit-transition-delay: 6100ms;
    -o-transition-delay: 6100ms;
    transition-delay: 6100ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(19) .curriculum__subject__item__container {
    -webkit-transition-delay: 6400ms;
    -o-transition-delay: 6400ms;
    transition-delay: 6400ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(20) .curriculum__subject__item__container {
    -webkit-transition-delay: 6700ms;
    -o-transition-delay: 6700ms;
    transition-delay: 6700ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(21) .curriculum__subject__item__container {
    -webkit-transition-delay: 7000ms;
    -o-transition-delay: 7000ms;
    transition-delay: 7000ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(22) .curriculum__subject__item__container {
    -webkit-transition-delay: 7300ms;
    -o-transition-delay: 7300ms;
    transition-delay: 7300ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(23) .curriculum__subject__item__container {
    -webkit-transition-delay: 7600ms;
    -o-transition-delay: 7600ms;
    transition-delay: 7600ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(24) .curriculum__subject__item__container {
    -webkit-transition-delay: 7900ms;
    -o-transition-delay: 7900ms;
    transition-delay: 7900ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(25) .curriculum__subject__item__container {
    -webkit-transition-delay: 8200ms;
    -o-transition-delay: 8200ms;
    transition-delay: 8200ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(26) .curriculum__subject__item__container {
    -webkit-transition-delay: 8500ms;
    -o-transition-delay: 8500ms;
    transition-delay: 8500ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(27) .curriculum__subject__item__container {
    -webkit-transition-delay: 8800ms;
    -o-transition-delay: 8800ms;
    transition-delay: 8800ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(28) .curriculum__subject__item__container {
    -webkit-transition-delay: 9100ms;
    -o-transition-delay: 9100ms;
    transition-delay: 9100ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(29) .curriculum__subject__item__container {
    -webkit-transition-delay: 9400ms;
    -o-transition-delay: 9400ms;
    transition-delay: 9400ms
}

.curriculum__subject__title__list .curriculum__subject__item:nth-child(30) .curriculum__subject__item__container {
    -webkit-transition-delay: 9700ms;
    -o-transition-delay: 9700ms;
    transition-delay: 9700ms
}

.inview .curriculum__subject__title__list .curriculum__subject__item .curriculum__subject__item__container {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide {
    opacity: 0;
    pointer-events: none;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active {
    opacity: 1
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide {
    opacity: 0.6;
    pointer-events: all
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide+.swiper-slide {
    opacity: 0.5;
    pointer-events: all
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide+.swiper-slide+.swiper-slide {
    opacity: 0.4;
    pointer-events: all
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide {
    opacity: 0.3;
    pointer-events: all
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide {
    opacity: 0.2;
    pointer-events: all
}

.curriculum__subject__title__list .curriculum__subject__item.swiper-slide-active+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide+.swiper-slide {
    opacity: 0.1;
    pointer-events: all
}

.curriculum__subject__title__list button.curriculum__subject__item__container {
    padding-right: 1em;
    min-height: 2lh
}

.curriculum__subject__title__list p.curriculum__subject__item__title {
    text-align: left
}

.curriculum__details__list {
    margin: 2em 0 0;
    padding: 0
}

.curriculum__details__item {
    opacity: 0 !important;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

.curriculum__details__item.swiper-slide-active {
    opacity: 1 !important
}

.curriculum__details__item__container {
    margin-top: 4em;
    color: #fff
}

.mason--earlyYears .curriculum__details__item__container {
    color: #000
}

@media (min-width:769px) {
    .curriculum__details__item__container {
        margin-top: 0
    }
}

.curriculum__details__item__image {
    aspect-ratio: 330 / 220;
    max-height: 220px;
    height: auto;
    width: 100%;
    overflow: hidden;
    border-radius: var(--radius-sm)
}

.curriculum__details__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

p.curriculum__details__item__title {
    margin-top: 1em
}

p.curriculum__details__item__info {
    max-width: 500px;
    line-height: 1.5;
    max-height: 6lh;
    overflow-y: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding-right: 0.7em
}

p.curriculum__details__item__info::-webkit-scrollbar {
    width: 8px
}

p.curriculum__details__item__info::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

p.curriculum__details__item__info::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

@media (min-width:769px) {
    .curriculum__lists {
        margin-inline: auto;
        margin-top: 3em
    }

    .curriculum__lists__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 1em
    }

    .curriculum__subject__title__list__container {
        min-height: 480px;
        overflow: visible
    }

    .curriculum__details__list {
        margin-top: 0;
        height: 470px;
        width: 50%
    }

    p.curriculum__details__item__title {
        display: none
    }

    .curriculum__details__item__image {
        aspect-ratio: 330 / 220
    }
}

@media (min-width:950px) {
    .curriculum {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 3em;
        border-radius: var(--radius-lg)
    }

    .curriculum__subject__title__list__container {
        max-width: 230px
    }

    .curriculum__section__content__block {
        padding-right: 0;
        width: 45%
    }

    .curriculum__section__content {
        max-width: 450px
    }

    .curriculum__lists {
        max-width: 820px;
        width: 50%;
        padding-top: 0.5em;
        margin-top: 0
    }

    .curriculum__lists__container {
        padding-right: 4em;
        padding-left: 0;
        max-width: 650px
    }

    .curriculum__details__list {
        max-width: 330px
    }

    .curriculum__details__item__image {
        border-radius: var(--radius-md)
    }
}

.ofsted__reports {
    position: relative;
    color: #fff
}

.ofsted__reports .ofsted__reports__container {
    position: relative;
    padding: 4em 5% 6em
}

.ofsted__border__dash {
    display: none;
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% + 50px);
    height: calc(100% + 50px);
    border: 3px solid var(--col-tint--normal);
    border-radius: var(--radius-lg)
}

.ofsted__reports__bg__image__container .ofsted__reports__bg__image {
    background-color: var(--col-sec)
}

.ofsted__reports__bg__image__container .ofsted__reports__bg__image img {
    opacity: 1;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    mix-blend-mode: luminosity
}

.ofsted__reports__bg__image__container .ofsted__reports__image__overlay {
    z-index: 1;
    background-color: rgba(var(--col-shade--dark--opac), 0.7)
}

.ofsted__reports__bg__image__container .ofsted__reports__image__overlay:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    opacity: 0.5
}

.ofsted__reports__content {
    position: relative;
    z-index: 2
}

.ofsted__reports__content .next__steps__header {
    margin-left: var(--accent-gap)
}

.ofsted__reports__content .next__steps__header .section__titles {
    font-size: clamp(0.8em, 1.2cqw, 1em);
    margin-left: 0
}

.ofsted__reports__content .next__steps__header .section__titles h2,
.ofsted__reports__content .next__steps__header .section__titles h3 {
    -webkit-filter: drop-shadow(0px 0px 30px black);
    filter: drop-shadow(0px 0px 30px black)
}

.ofsted__reports__content .ey__ofsted__content__text__region p {
    max-width: 516px;
    line-height: 1.5
}

.ofsted__reports__content .ey__ofsted__content__button__region {
    margin-top: 2em
}

.ofsted__attachments__block {
    position: relative;
    z-index: 2;
    margin-top: 3em
}

.ofsted__attachments__block .ofsted__attachement__item {
    position: relative;
    font-weight: 600;
    border-bottom: 2px solid var(--col-pri);
    padding: 0.75em 2.65em;
    padding-left: 0;
    margin-top: 0.6em;
    -webkit-transition: background 300ms ease, color 300ms ease, border-color 300ms ease;
    -o-transition: background 300ms ease, color 300ms ease, border-color 300ms ease;
    transition: background 300ms ease, color 300ms ease, border-color 300ms ease
}

.ofsted__attachments__block .ofsted__attachement__item:hover {
    border-bottom-color: var(--col-shade--normal)
}

.ofsted__attachments__block .ofsted__attachement__item:hover .ofsted__attachement__item__title {
    color: #fff
}

.ofsted__attachments__block .ofsted__attachement__item:hover .ofsted__attachement__item__info span svg {
    -webkit-transform: translateY(4px);
    -ms-transform: translateY(4px);
    transform: translateY(4px)
}

.ofsted__attachments__block .ofsted__attachement__item:hover .ofsted__attachement__item__info span:before {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}

.ofsted__attachments__block .ofsted__attachement__item__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-block: 0.5em
}

.ofsted__attachments__block .ofsted__attachement__item__block p {
    margin: 0
}

.ofsted__attachments__block .ofsted__attachement__item__title {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    font-size: 1.125em;
    -webkit-transition: color 300ms ease;
    -o-transition: color 300ms ease;
    transition: color 300ms ease
}

.ofsted__attachments__block .ofsted__attachement__item__info {
    font-size: 0.875em;
    padding-left: 0.5em;
    padding-right: 1em;
    letter-spacing: 0.15em;
    color: var(--col-sec)
}

.ofsted__attachments__block .ofsted__attachement__item__info span {
    position: absolute;
    right: -1em;
    bottom: 0;
    top: 0;
    display: block;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: transparent;
    font-size: 1.3em;
    font-weight: 700;
    -webkit-transition: background 0.3s ease, color 0.3s ease;
    -o-transition: background 0.3s ease, color 0.3s ease;
    transition: background 0.3s ease, color 0.3s ease
}

.ofsted__attachments__block .ofsted__attachement__item__info span svg {
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease
}

.ofsted__attachments__block .ofsted__attachement__item__info span:before {
    position: absolute;
    content: "";
    top: auto;
    right: 2em;
    bottom: -5px;
    left: 0;
    height: 2px;
    width: 13px;
    background-color: var(--col-sec);
    margin: auto;
    -webkit-transform: scale(0, 1);
    -ms-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transition: 300ms ease;
    -o-transition: 300ms ease;
    transition: 300ms ease
}

@media (min-width:769px) {
    .ofsted__reports {
        padding-inline: 5%;
        margin-block: 3em
    }
}

@media (min-width:769px) and (min-width:1465.2px) {
    .ofsted__reports {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 660px);
        padding-right: calc(50% - 660px)
    }
}

@media (min-width:769px) {
    .ofsted__reports .ofsted__reports__container {
        padding: 4em 3em
    }

    .ofsted__border__dash {
        display: block
    }

    .ofsted__reports__bg__image__container {
        border-radius: var(--radius-lg)
    }
}

@media (min-width:950px) {
    .ofsted__reports .ofsted__reports__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 1em;
        padding-inline: clamp(5em, 7vw, 6em);
        padding-block: 5em
    }

    .ofsted__reports__content .next__steps__header {
        margin-left: 0
    }

    .ofsted__attachments__block {
        margin-top: 0;
        width: 100%;
        max-width: 560px
    }

    .ofsted__attachments__block .ofsted__attachement__item:first-child {
        margin-top: 0
    }
}

.ey__spotlight {
    max-width: 1480px;
    margin: auto;
    overflow: hidden
}

@media (min-width:1025px) {
    .ey__spotlight {
        border-radius: var(--radius-lg)
    }
}

@media (min-width:1025px) {
    .boarding__spotlight .spotlight {
        margin-top: -6em
    }

    .boarding__spotlight .spotlight__header {
        top: calc(5em + 6em)
    }

    .boarding__spotlight .spotlight__item__content__box {
        margin-top: calc(215px + 6em)
    }

    .boarding__spotlight .spotlight__navigation {
        margin-top: calc(clamp(5em, 20vw, 9em) + 80px + 6em)
    }
}

.spotlight {
    position: relative;
    min-height: 400px
}

.spotlight__header {
    position: absolute;
    top: 15em;
    left: 5%;
    width: 100%;
    z-index: 3;
    margin-left: var(--accent-gap)
}

.spotlight__header .section__titles {
    max-width: calc(560px - var(--accent-gap));
    width: 100%;
    margin-left: 0
}

@media (min-width:415px) {
    .spotlight__header {
        top: 12em
    }
}

.spotlight__navigation {
    position: absolute;
    bottom: 0;
    left: 5%
}

@media (min-width:950px) {
    .spotlight__navigation {
        margin-top: calc(clamp(5em, 25vw, 15em) + 80px);
        right: clamp(3em, 8vw, 6em);
        left: auto
    }
}

@media (min-width:1025px) {
    .spotlight__navigation {
        margin-top: calc(clamp(5em, 20vw, 9em) + 80px);
        right: clamp(3em, 5vw, 6em)
    }
}

@media (min-width:1350px) {
    .spotlight__navigation {
        -webkit-transform: translateX(260%);
        -ms-transform: translateX(260%);
        transform: translateX(260%)
    }
}

@media (min-width:1350px) and (min-width:1287.6px) {
    .spotlight__navigation {
        padding-right: 0;
        margin-right: calc(50% - 580px)
    }
}

.spotlight__list {
    overflow: visible;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    background-color: rgba(var(--col-shade--normal--opac), 0.9)
}

@media (min-width:769px) {
    .spotlight__list {
        background-color: transparent
    }
}

.spotlight__item.swiper-slide {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content
}

.spotlight__item__bg__image {
    position: absolute;
    inset: 0;
    line-height: 0;
    background-color: #000;
    opacity: 1
}

.spotlight__item__bg__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0.8
}

.spotlight__item__bg__image:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.4;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.spotlight__item__bg__image:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.4)
}

.spotlight__item__content__box {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-height: 450px;
    padding: 2.2em;
    color: #fff;
    -ms-flex-line-pack: center;
    align-content: center;
    margin-top: 325px;
    margin-bottom: 120px;
    margin-inline: 5vw;
    -webkit-backdrop-filter: blur(30px) brightness(0.9);
    backdrop-filter: blur(30px) brightness(0.9);
    --webkit-backdrop-filter: blur(30px) brightness(0.9);
    background-color: rgba(0, 0, 0, 0.5);
    border: 1px solid #fff;
    border-radius: var(--radius-sm);
    opacity: 0;
    -webkit-transition: opacity 1000ms ease;
    -o-transition: opacity 1000ms ease;
    transition: opacity 1000ms ease;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

.inview .spotlight__item__content__box {
    opacity: 1
}

@media (min-width:415px) {
    .spotlight__item__content__box {
        margin-top: 325px;
        margin-bottom: 120px;
        min-height: 480px
    }
}

.spotlight__item__title {
    font-size: clamp(1.375em, 5cqw, 1.875em);
    margin: 0;
    font-weight: 500;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 1.6s;
    -o-transition-delay: 1.6s;
    transition-delay: 1.6s
}

.inview .spotlight__item__title,
.spotlight__item__title.inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.spotlight__item__text {
    margin-top: 1em;
    line-height: 1.5;
    font-weight: 300;
    min-height: 9lh;
    max-height: 9lh;
    overflow-y: auto;
    padding-right: 0.7em;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 1.8s;
    -o-transition-delay: 1.8s;
    transition-delay: 1.8s
}

.spotlight__item__text::-webkit-scrollbar {
    width: 8px
}

.spotlight__item__text::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.spotlight__item__text::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.inview .spotlight__item__text,
.spotlight__item__text.inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

@media (min-width:415px) {
    .spotlight__item__text {
        min-height: 6lh;
        -webkit-line-clamp: 6
    }
}

.spotlight__item__button__link {
    margin-top: 2em;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 2s;
    -o-transition-delay: 2s;
    transition-delay: 2s
}

.inview .spotlight__item__button__link,
.spotlight__item__button__link.inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.spotlight__item__button__link a[href=""] {
    display: none
}

@media (min-width:769px) {
    .spotlight__header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        left: 5%;
        top: 5em
    }

    .spotlight__item__content {
        padding-right: 5vw
    }

    .spotlight__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }

    .spotlight__item__content__box {
        background-color: rgba(0, 0, 0, 0.05);
        min-height: 350px
    }
}

@media (min-width:1025px) {
    .spotlight {
        border-radius: var(--radius-lg)
    }

    .spotlight__header {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        left: auto;
        right: 5vw
    }
}

@media (min-width:1025px) and (min-width:1287.6px) {
    .spotlight__header {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 580px)
    }
}

@media (min-width:1025px) {
    .spotlight__item__bg__image:after {
        background: -webkit-gradient(linear, right top, left top, from(#000), to(transparent));
        background: -webkit-linear-gradient(right, #000, transparent);
        background: -o-linear-gradient(right, #000, transparent);
        background: linear-gradient(to left, #000, transparent)
    }
}

@media (min-width:1025px) and (min-width:1287.6px) {
    .spotlight__item__content {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 580px)
    }
}

@media (min-width:1025px) {
    .spotlight__item__content__box {
        margin-right: 0;
        margin-top: 215px;
        margin-bottom: 165px;
        width: 100cqw;
        max-width: 560px
    }
}

.transition__support {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: clamp(2em, 5%, 5em);
    padding-block: clamp(3em, 5vw, 6em);
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .transition__support {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 580px)
    }
}

@media (min-width:1465.2px) {
    .transition__support {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 660px)
    }
}

.transition__support__content {
    width: 100%;
    container-type: inline-size
}

.transition__support__content__region .transition__support__content__text {
    line-height: 1.5
}

.transition__support__content__region .transition__support__content__author {
    margin: 0
}

.transition__support__content__region .transition__support__content__author__title {
    margin: 0.2em 0 0;
    color: var(--col-shade--normal)
}

.transition__support__content__region .transition__support__button__link {
    margin-top: 2.5em
}

.transition__support__content__region .transition__support__button__link a,
.transition__support__content__region .transition__support__button__link span {
    color: var(--col-shade--dark)
}

.transition__support__media {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 540/500;
    max-width: 330px
}

.transition__support__media__border__dash svg.single__img__border__dash {
    display: none
}

.transition__support__media__border__dash svg.multi__img__border__dash {
    display: none
}

.transition__support__media__images {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    overflow: hidden
}

.mason--admin .transition__support__media__images {
    z-index: 2
}

.transition__support__media__images .transition__support__image {
    width: 100%;
    height: 100%;
    background: var(--col-pri);
    border-radius: var(--radius-lg);
    overflow: hidden
}

.transition__support__media__images .transition__support__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.transition__support__media__images .transition__support__image__2 {
    display: none
}

.transition__support__media__images .transition__support__image__3 {
    display: none
}

@media (min-width:650px) {
    .transition__support {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        row-gap: 3em
    }

    .transition__support__media {
        aspect-ratio: 660 / 320;
        max-width: unset
    }

    .transition__support__media__border__dash.transition__support__media__border__dash {
        -webkit-transform: scale(1.16);
        -ms-transform: scale(1.16);
        transform: scale(1.16)
    }

    .transition__support__media__images {
        display: -ms-grid;
        display: grid;
        gap: clamp(0.5em, 4vw, 2em);
        -ms-grid-rows: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr
    }

    .transition__support__media__images .transition__support__image {
        border-radius: var(--radius-md)
    }

    .transition__support__media__images .transition__support__image__1 {
        -ms-grid-row: 1;
        grid-row-start: 1;
        -ms-grid-column: 1;
        grid-column-start: 1;
        -ms-grid-row-span: 2;
        grid-row-end: 3;
        -ms-grid-column-span: 1;
        grid-column-end: 2
    }

    .transition__support__media__images .transition__support__image__2 {
        display: block;
        -ms-grid-row: 1;
        grid-row-start: 1;
        -ms-grid-column: 2;
        grid-column-start: 2;
        -ms-grid-row-span: 1;
        grid-row-end: 2;
        -ms-grid-column-span: 1;
        grid-column-end: 3
    }

    .transition__support__media__images .transition__support__image__3 {
        display: block;
        -ms-grid-row: 2;
        grid-row-start: 2;
        -ms-grid-column: 2;
        grid-column-start: 2;
        -ms-grid-row-span: 1;
        grid-row-end: 3;
        -ms-grid-column-span: 1;
        grid-column-end: 3
    }
}

@media (min-width:950px) {
    .transition__support__media__border__dash.transition__support__media__border__dash {
        -webkit-transform: scaleX(1.1) scaleY(1.14);
        -ms-transform: scaleX(1.1) scaleY(1.14);
        transform: scaleX(1.1) scaleY(1.14)
    }

    .transition__support__media {
        max-width: clamp(450px, 45cqi, 660px);
        aspect-ratio: 660 / 450
    }
}

@media (min-width:1025px) {
    .transition__support {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .transition__support__content {
        padding-top: 1em;
        width: 45%;
        max-width: 480px;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .transition__support__media {
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
        margin-block: 1em
    }
}

.why__sp__next__step__row {
    padding-inline: 5%;
    padding-bottom: clamp(2em, 6vw, 4.5em)
}

@media (min-width:1465.2px) {
    .why__sp__next__step__row {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 660px);
        padding-right: calc(50% - 660px)
    }
}

.why__sp__next__step__row .next__steps__header #next__step__content__title__2 {
    font-size: clamp(1.875em, 9cqw, 2.5em)
}

.next__step {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: var(--col-shade--darker);
    overflow: hidden
}

.next__step__content {
    position: relative;
    width: 100%;
    container-type: inline-size;
    -ms-flex-line-pack: center;
    align-content: center;
    padding-block: 3em;
    padding-right: 5%;
    padding-left: clamp(2em, 6.5%, 6em)
}

@media (min-width:769px) {
    .mason--boarding .next__step__content {
        padding-block: 5em
    }
}

.next__step__content__logo {
    display: none
}

.grouped__block__ey .next__step__content__logo {
    display: block;
    position: absolute;
    width: clamp(80px, 15cqw, 180px);
    top: 0;
    left: 5%;
    margin: auto;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media (min-width:769px) {
    .grouped__block__ey .next__step__content__logo {
        top: 10%;
        left: auto;
        right: 0;
        -webkit-transform: translateX(50%);
        -ms-transform: translateX(50%);
        transform: translateX(50%);
        width: clamp(80px, 37cqi, 180px)
    }
}

.next__step__row__reverse .next__step__header #next__step__content__title__2__ds2 {
    padding-right: 1em
}

.next__step__text__region {
    color: #fff
}

.button__region.next__step__content__button__region {
    margin-top: 1.5em
}

.next__step__media {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    aspect-ratio: 500/280;
    overflow: hidden
}

.next__step__media__image {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 0;
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease
}

.next__step__media__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.mason--admin .next__step__media__image {
    z-index: 2
}

@media (min-width:769px) {
    .next__step {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        height: 550px;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .mason--boarding .next__step {
        height: 620px
    }

    .next__step__row__reverse .next__step {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .next__step__content {
        width: 50%;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .next__step__header {
        max-width: 470px
    }

    .next__step__media {
        -ms-flex-item-align: start;
        align-self: flex-start;
        max-width: none;
        width: 50%
    }
}

.mason--whyStephenPerse .next__step__media {
    position: relative;
    width: 100%;
    background: #000;
    -webkit-box-shadow: var(--shadow-md-darker);
    box-shadow: var(--shadow-md-darker)
}

.mason--whyStephenPerse .next__step__media:has(.next__step__media__video__popout:hover) .next__step__media__image img[loading=lazy].lazy--loaded {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05)
}

@media (min-width:769px) {
    .parents__explore__links {
        margin-top: -5em
    }
}

section.explore__links {
    position: relative;
    z-index: 1;
    padding-block: clamp(2em, 7vw, 6.2em);
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    section.explore__links {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

section.explore__links .explore__links__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1em;
    margin-top: 3em
}

section.explore__links .explore__links__list__item {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 300px;
    min-width: 300px;
    overflow: visible
}

section.explore__links .explore__links__list__item__link {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    border-radius: var(--radius-md);
    -webkit-box-shadow: var(--shadow);
    box-shadow: var(--shadow)
}

section.explore__links .explore__links__list__item__link:focus .explore__links__list__item__image img,
section.explore__links .explore__links__list__item__link:hover .explore__links__list__item__image img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0.7
}

section.explore__links .explore__links__list__item__link:focus .explore__links__list__item__overlay:after,
section.explore__links .explore__links__list__item__link:hover .explore__links__list__item__overlay:after {
    position: absolute;
    content: "";
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
    opacity: 1
}

section.explore__links .explore__links__list__item__image {
    background-color: #000;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-transition: -webkit-transform 400ms ease;
    transition: -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease;
    transition: transform 400ms ease;
    transition: transform 400ms ease, -webkit-transform 400ms ease
}

section.explore__links .explore__links__list__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: opacity 600ms ease, -webkit-transform 600ms ease;
    transition: opacity 600ms ease, -webkit-transform 600ms ease;
    -o-transition: opacity 600ms ease, transform 600ms ease;
    transition: opacity 600ms ease, transform 600ms ease;
    transition: opacity 600ms ease, transform 600ms ease, -webkit-transform 600ms ease
}

section.explore__links .explore__links__list__item__overlay {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    margin: auto;
    pointer-events: none
}

section.explore__links .explore__links__list__item__overlay:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: 50%;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    opacity: 0.7
}

section.explore__links .explore__links__list__item__overlay:after {
    z-index: 2;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    border: 2px solid #fff;
    border-radius: var(--radius-md);
    opacity: 0;
    -webkit-transition: 300ms ease;
    -o-transition: 300ms ease;
    transition: 300ms ease
}

section.explore__links .explore__links__list__item__content {
    position: absolute;
    inset: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: clamp(2em, 8cqi, 2.5em)
}

section.explore__links .explore__links__list__item__content p {
    font-size: clamp(1.5em, 9cqw, 2.5em);
    margin-block: 0;
    font-weight: 500
}

@media (min-width:769px) {
    section.explore__links .explore__links__list {
        gap: 2em;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    section.explore__links .explore__links__list__item {
        -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
        justify-content: stretch;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: calc(50% - 1em);
        max-width: unset;
        width: 360px;
        height: 389px
    }
}

@media (min-width:1025px) {
    section.explore__links .explore__links__list {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.db__junior__offerings,
.junior__offerings {
    position: relative;
    z-index: 5;
    margin-top: 6em
}

.text__offerings {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: clamp(2em, 5%, 5em);
    margin-block: clamp(3em, 5vw, 9em);
    margin-inline: 5%
}

@media (min-width:1287.6px) {
    .text__offerings {
        padding-inline: 0;
        margin-left: calc(50% - 580px);
        margin-right: calc(50% - 580px)
    }
}

.text__offerings .text__offerings__bg {
    position: absolute;
    content: "";
    top: -10vw;
    right: -5vw;
    bottom: -5vw;
    left: -5vw;
    background: var(--col-sec);
    overflow: hidden;
    border-radius: var(--radius-lg)
}

.text__offerings .text__offerings__bg:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right top, from(rgba(var(--col-off-white--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(left, rgba(var(--col-off-white--opac), 1), transparent);
    background: -o-linear-gradient(left, rgba(var(--col-off-white--opac), 1), transparent);
    background: linear-gradient(to right, rgba(var(--col-off-white--opac), 1), transparent)
}

@media (min-width:769px) {
    .text__offerings .text__offerings__bg {
        position: absolute;
        content: "";
        top: -80px;
        right: -80px;
        bottom: -80px;
        left: -80px
    }
}

.text__offerings__content {
    width: 100%;
    container-type: inline-size;
    max-width: 480px
}

.text__offerings__content__region {
    position: relative
}

.text__offerings__content__region .text__offerings__content__text__region p {
    line-height: 1.5
}

.text__offerings__media {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 540/500;
    max-width: 330px
}

.text__offerings__media__image {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
    background: var(--col-pri);
    border-radius: var(--radius-md);
    overflow: hidden
}

.mason--admin .text__offerings__media__image {
    z-index: 2
}

.text__offerings__media__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.text__offers__container {
    margin-top: 2em
}

.text__offers__navigation {
    right: 0
}

.text__offer__list {
    height: 320px;
    overflow: visible
}

.text__offer__item__title {
    font-size: clamp(1.375em, 9cqw, 1.875em);
    color: var(--col-black);
    font-weight: 600
}

.text__offer__item__text {
    line-height: 1.5;
    max-height: 8lh;
    overflow-y: auto;
    padding-right: 0.7em;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar
}

.text__offer__item__text::-webkit-scrollbar {
    width: 8px
}

.text__offer__item__text::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.text__offer__item__text::-webkit-scrollbar-thumb {
    background-color: var(--col-tint--darkest);
    border-radius: 0
}

.text__offer__item .button__link {
    margin-top: 1.4em
}

.text__offer__item .button__link:has(a[href=""]) {
    display: none
}

@media (min-width:950px) {
    .text__offerings {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .text__offerings__content {
        padding-top: 2em;
        width: 45%;
        max-width: 620px;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .text__offerings__content__region {
        max-width: 440px
    }

    .text__offerings__media {
        max-width: 540px;
        -ms-flex-item-align: stretch;
        -ms-grid-row-align: stretch;
        align-self: stretch
    }

    .text__offers__container {
        max-width: 440px
    }

    .text__offer__item__text {
        max-height: 9lh
    }
}

.db__junior__co__curricular,
.junior__co__curricular {
    position: relative;
    padding-block: clamp(3em, 5vw, 6em)
}

.senior__co__curricular,
.sixth__form__co__curricular {
    position: relative;
    padding-top: clamp(3em, 5vw, 6em)
}

.co-curricular__bg {
    position: absolute;
    content: "";
    top: -8%;
    right: 0;
    bottom: auto;
    left: 0;
    background-color: var(--col-sec);
    height: 85%
}

.mason--dbJuniorSchool .co-curricular__bg {
    background-color: rgba(var(--col-db-ter--opac), 0.3)
}

.co-curricular__bg:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right bottom, from(rgba(var(--col-off-white--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: -o-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: linear-gradient(to bottom right, rgba(var(--col-off-white--opac), 1), transparent)
}

.co__curricular__header {
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .co__curricular__header {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 580px)
    }
}

@media (min-width:1465.2px) {
    .co__curricular__header {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 660px)
    }
}

.co__curricular__header .co__curricular__header__info {
    position: relative
}

.co__curricular__header .co__curricular__header__info .co__curricular__header__text__region {
    margin-top: 1em
}

.co__curricular__header .co__curricular__header__info .co__curricular__header__text__region p {
    line-height: 1.5
}

.co__curricular__header .co__curricular__header__info .co__curricular__header__text__region p:last-child {
    margin-bottom: 0
}

.co__curricular__list__container {
    margin-top: 2em;
    padding-inline: 5%
}

@media (min-width:1465.2px) {
    .co__curricular__list__container {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 660px);
        padding-right: calc(50% - 660px)
    }
}

.co__curricular__navigation.swiper__navigation {
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
    margin: 1em 0 0
}

.co__curricular__navigation.swiper__navigation>button {
    color: var(--col-shade--darker);
    font-size: 1em
}

.co__curricular__navigation.swiper__navigation .nav__pause span {
    background-color: var(--col-shade--darker);
    width: 3px;
    height: 20px
}

.co__curricular__navigation.swiper__navigation button.co__curricular__pause>:nth-child(2) {
    display: none
}

.co__curricular__navigation.swiper__navigation button.co__curricular__pause.active>:first-child {
    display: none
}

.co__curricular__navigation.swiper__navigation button.co__curricular__pause.active>:nth-child(2) {
    display: block
}

@media (min-width:950px) {
    .co__curricular__navigation.swiper__navigation {
        position: relative;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-transform: translate(0);
        -ms-transform: translate(0);
        transform: translate(0);
        max-width: unset
    }

    .co__curricular__navigation.swiper__navigation .swiper__navigation__button {
        rotate: 0deg
    }
}

.co__curricular__list__container {
    -webkit-transform: translateX(25%);
    -ms-transform: translateX(25%);
    transform: translateX(25%)
}

.co__curricular__list {
    overflow: visible
}

.co__curricular__item.swiper-slide {
    margin-inline: 10px;
    aspect-ratio: 460 / 350;
    -ms-flex-line-pack: center;
    align-content: center
}

.co__curricular__item.swiper-slide .co__curricular__item__block {
    max-width: 325px;
    -webkit-transition: 5000ms ease !important;
    -o-transition: 5000ms ease !important;
    transition: 5000ms ease !important
}

.co__curricular__item.swiper-slide-visible .co__curricular__item__block {
    -webkit-transition: 5000ms ease !important;
    -o-transition: 5000ms ease !important;
    transition: 5000ms ease !important
}

.co__curricular__item.swiper-slide-next .co__curricular__item__block,
.co__curricular__item.swiper-slide-prev .co__curricular__item__block {
    max-width: 390px;
    -webkit-transition: max-width 5000ms ease;
    -o-transition: max-width 5000ms ease;
    transition: max-width 5000ms ease
}

.co__curricular__item.swiper-slide-active .co__curricular__item__block {
    max-width: 460px;
    -webkit-transition: max-width 5000ms ease;
    -o-transition: max-width 5000ms ease;
    transition: max-width 5000ms ease
}

.co__curricular__item__block {
    position: relative;
    width: 100%;
    max-width: 325px;
    aspect-ratio: 460 / 350;
    height: auto;
    margin: auto;
    border-radius: var(--radius-lg);
    overflow: hidden
}

.co__curricular__item__image {
    position: relative;
    width: 100%;
    height: 100%
}

.co__curricular__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.co__curricular__item__image:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 50%;
    margin: auto;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.co__curricular__item__content {
    position: absolute;
    inset: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 2em;
    color: #fff
}

.co__curricular__item__title {
    font-size: clamp(1.375em, 6cqw, 1.875em);
    margin: 0
}

@media (min-width:950px) {
    .co__curricular__header .co__curricular__header__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        gap: 2em
    }

    .co__curricular__header .co__curricular__header__info .co__curricular__header__text__region {
        max-width: clamp(400px, 55vw, 790px)
    }
}

@media (min-width:769px) {
    .grouped__block__db__top {
        margin-top: -8em
    }
}

.support__single__reverse {
    padding-bottom: 4em
}

@media (min-width:950px) {
    .support__single__reverse {
        margin-bottom: 0
    }
}

.boarding__spotlight__single .spotlight__single {
    padding-top: 7em;
    margin-top: -6em
}

@media (min-width:769px) {
    .boarding__spotlight__single .feature__footer__top.spotlight__single__top {
        margin-bottom: -6em
    }
}

.why__sp__spotlight__single {
    margin-top: -8em
}

.spotlight__single {
    position: relative
}

.spotlight__single__reverse .spotlight__single {
    margin: 5em 5%
}

@media (min-width:1465.2px) {
    .spotlight__single__reverse .spotlight__single {
        padding-inline: 0;
        margin-left: calc(50% - 660px);
        margin-right: calc(50% - 660px)
    }
}

.support__single__reverse .spotlight__single {
    margin-top: 2em;
    margin-bottom: 0
}

@media (min-width:950px) {
    .support__single__reverse .spotlight__single {
        margin-top: 2em;
        position: relative;
        z-index: 3;
        margin-bottom: -10em
    }
}

.spotlight__single__image__container .spotlight__single__bg__image img,
.spotlight__single__image__container .spotlight__single__reverse__bg__image img {
    opacity: 1
}

.spotlight__single__image__container .spotlight__single__image__overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left top, right top, from(#000), to(transparent));
    background: -webkit-linear-gradient(left, #000, transparent);
    background: -o-linear-gradient(left, #000, transparent);
    background: linear-gradient(to right, #000, transparent);
    opacity: 0.8
}

.spotlight__single__image__container .spotlight__single__image__overlay:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    opacity: 0.5
}

.support__single__reverse .spotlight__single__image__container .spotlight__single__image__overlay:before {
    background: -webkit-gradient(linear, left top, right top, from(#000), to(transparent));
    background: -webkit-linear-gradient(left, #000, transparent);
    background: -o-linear-gradient(left, #000, transparent);
    background: linear-gradient(to right, #000, transparent)
}

@media (min-width:950px) {
    .support__single__reverse .spotlight__single__image__container .spotlight__single__image__overlay:before {
        background: -webkit-gradient(linear, right top, left top, from(#000), to(transparent));
        background: -webkit-linear-gradient(right, #000, transparent);
        background: -o-linear-gradient(right, #000, transparent);
        background: linear-gradient(to left, #000, transparent)
    }
}

.support__single__reverse .spotlight__single__image__container .spotlight__single__image__overlay:after {
    opacity: 1;
    height: 43%;
    top: auto
}

.spotlight__single__image__container #spotlight__single__image__text,
.spotlight__single__image__container #spotlight__single__reverse__image__text {
    position: absolute;
    bottom: 1em;
    right: 0;
    margin-right: 5%;
    margin-block: 0;
    min-width: 200px;
    max-width: clamp(250px, 43vw, 430px);
    z-index: 5;
    color: var(--col-sec);
    font-size: clamp(1.875em, 5vw, 3.125em);
    font-family: var(--font-feature);
    font-style: italic;
    font-weight: 400;
    letter-spacing: 0.015em;
    line-height: 1.1;
    opacity: 0;
    scale: 0.5;
    -webkit-transition: scale 1s ease, opacity 1s ease;
    -o-transition: scale 1s ease, opacity 1s ease;
    transition: scale 1s ease, opacity 1s ease;
    -webkit-transition-delay: 1400ms;
    -o-transition-delay: 1400ms;
    transition-delay: 1400ms
}

@media (min-width:1287.6px) {

    .spotlight__single__image__container #spotlight__single__image__text,
    .spotlight__single__image__container #spotlight__single__reverse__image__text {
        padding-right: 0;
        margin-right: calc(50% - 580px)
    }
}

.inview .spotlight__single__image__container #spotlight__single__image__text,
.inview .spotlight__single__image__container #spotlight__single__reverse__image__text {
    opacity: 1;
    scale: 1
}

@media (min-width:1025px) {

    .spotlight__single__image__container #spotlight__single__image__text,
    .spotlight__single__image__container #spotlight__single__reverse__image__text {
        bottom: 2.5em
    }
}

.spotlight__single__image__container #spotlight__single__reverse__image__text {
    left: 0;
    right: auto;
    margin-left: 5%
}

.spotlight__single__content__container {
    width: 100%;
    height: auto;
    padding-top: clamp(3em, 27vw, 12em);
    padding-bottom: clamp(9em, 27vw, 12em);
    padding-inline: 5%;
    -ms-flex-line-pack: center;
    align-content: center
}

@media (min-width:1287.6px) {
    .spotlight__single__content__container {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.mason--boarding .spotlight__single__content__container {
    padding-top: clamp(3em, 15vw, 10em);
    padding-bottom: 8em
}

.mason--whyStephenPerse .spotlight__single__content__container {
    padding-top: clamp(12em, 20vw, 14em);
    padding-bottom: clamp(9em, 27vw, 14em)
}

.spotlight__single__reverse .spotlight__single__content__container {
    padding-top: clamp(3em, 15vw, 10em);
    padding-bottom: 10em
}

.mason--supportUs .spotlight__single__reverse .spotlight__single__content__container {
    padding-block: 7em
}

@media (min-width:769px) {
    .spotlight__single__reverse .spotlight__single__content__container {
        padding-block: clamp(3em, 15vw, 10em);
        padding-right: 5%
    }
}

@media (min-width:950px) {
    .spotlight__single__reverse .spotlight__single__content__container {
        padding-left: 0;
        width: 50%;
        margin-left: auto;
        padding-left: clamp(2em, 6.5%, 6em)
    }
}

.spotlight__single__content {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    color: #fff
}

.spotlight__single__content .spotlight__single__header #spotlight__single__reverse__title__prefix,
.spotlight__single__content .spotlight__single__header #spotlight__single__title__prefix {
    color: var(--col-tint--normal)
}

.spotlight__single__content .spotlight__single__header #spotlight__single__reverse__title,
.spotlight__single__content .spotlight__single__header #spotlight__single__title {
    color: #fff
}

.mason--whyStephenPerse .spotlight__single__content .spotlight__single__header #spotlight__single__reverse__title,
.mason--whyStephenPerse .spotlight__single__content .spotlight__single__header #spotlight__single__title {
    max-width: clamp(300px, 85vw, 450px);
    text-wrap-style: balance;
    font-size: clamp(1.875em, 9cqw, 2.5em)
}

.spotlight__single__content .spotlight__single__section__text__region {
    position: relative;
    color: #fff;
    max-width: 500px
}

.spotlight__single__content .spotlight__single__section__text__region p {
    line-height: 1.5;
    font-weight: 300
}

.spotlight__single__content .spotlight__single__section__text__region p.intro {
    font-weight: 700
}

.spotlight__single__content .spotlight__single__links {
    margin-top: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2em;
    row-gap: 1em
}

.boarding__offerings,
.senior__offerings,
.sixth__form__offerings {
    position: relative;
    z-index: 5
}

.icon__offerings {
    border-radius: var(--radius-lg);
    overflow: hidden
}

@media (min-width:769px) {
    .icon__offerings {
        margin-inline: 5%
    }
}

@media (min-width:769px) and (min-width:1465.2px) {
    .icon__offerings {
        padding-inline: 0;
        margin-left: calc(50% - 660px);
        margin-right: calc(50% - 660px)
    }
}

.icon__offerings__icons__half {
    position: relative;
    background-color: var(--col-sec);
    padding-top: 3em;
    padding-bottom: 1em;
    padding-inline: clamp(2em, 5cqi, 4em)
}

.icon__offerings__icons__half:before {
    pointer-events: none;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right bottom, from(rgba(var(--col-off-white--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: -o-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: linear-gradient(to bottom right, rgba(var(--col-off-white--opac), 1), transparent)
}

.icon__offerings__icons__half .icon__offerings__container .icon__offerings__header {
    margin-bottom: clamp(1em, 5cqw, 3em)
}

.icon__offerings__icons__half .icon__offerings__container .icon__offerings__header .section__titles {
    margin-left: var(--accent-gap)
}

.icon__offerings__icons__half .icon__offer__button__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto;
    overflow: visible;
    padding-bottom: 4em
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    outline-offset: -2px
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item.swiper-slide-thumb-active .icon__offer__button__item__block,
.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item:hover .icon__offer__button__item__block {
    color: #fff
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item.swiper-slide-thumb-active .icon__offer__button__item__block:before,
.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item:hover .icon__offer__button__item__block:before {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item__block {
    position: relative;
    max-width: clamp(130px, 12cqw, 170px);
    width: 100%;
    aspect-ratio: 170 / 201;
    margin: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 1em;
    padding: 1em;
    color: var(--col-shade--darker);
    cursor: pointer;
    -webkit-transition: color 400ms ease;
    -o-transition: color 400ms ease;
    transition: color 400ms ease;
    outline: 0px solid transparent !important
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item__block:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    opacity: 0;
    background-color: var(--col-shade--dark);
    -webkit-box-shadow: var(--shadow-smaller);
    box-shadow: var(--shadow-smaller);
    -webkit-transform: scale(0.82);
    -ms-transform: scale(0.82);
    transform: scale(0.82);
    -webkit-transition: opacity 400ms ease, -webkit-transform 400ms ease;
    transition: opacity 400ms ease, -webkit-transform 400ms ease;
    -o-transition: opacity 400ms ease, transform 400ms ease;
    transition: opacity 400ms ease, transform 400ms ease;
    transition: opacity 400ms ease, transform 400ms ease, -webkit-transform 400ms ease;
    border-radius: var(--radius-smallest);
    border: 2px solid var(--col-pri)
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item__icon {
    position: relative;
    max-width: clamp(50px, 8cqw, 85px);
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    color: inherit
}

.icon__offerings__icons__half .icon__offer__button__container .icon__offer__button__item__icon svg {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    fill: currentColor
}

.icon__offerings__icons__half .icon__offer__button__container h5.icon__offer__button__item__title {
    position: relative;
    font-size: clamp(1.125em, 1.7cqw, 1.25em);
    color: var(--col-shade--darker);
    margin: 0;
    color: inherit;
    min-height: 2lh;
    min-width: 13ch;
    padding-inline: 1ch
}

.icon__offerings__icons__half .icon__offerings__button__navigation {
    position: absolute;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    left: 5%;
    bottom: 1em;
    margin: 0
}

@media (min-width:950px) {
    .icon__offerings__icons__half .icon__offerings__button__navigation {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        top: auto;
        right: auto;
        left: 5%;
        bottom: 1em;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        gap: 0.5em
    }

    .icon__offerings__icons__half .icon__offerings__button__navigation .swiper__navigation__button {
        rotate: 0deg
    }
}

@media (min-width:1025px) {
    .icon__offerings__icons__half .icon__offerings__button__navigation {
        display: none
    }
}

.icon__offerings__details__half .icon__offer__icon__details__container {
    background-color: var(--col-shade--darker)
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item {
    background-color: var(--col-shade--darker)
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__image {
    overflow: hidden;
    height: clamp(215px, 30vw, 375px);
    max-height: 375px
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__content {
    padding-block: 2.5em;
    padding-inline: clamp(2em, 5cqi, 3em);
    color: #fff
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__content .button__link {
    min-height: 65px
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__content .button__link a[href=""] {
    display: none
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__title {
    font-size: 1.875em;
    color: var(--col-tint--normal);
    font-weight: 600;
    min-height: 2lh
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__text {
    line-height: 1.5;
    min-height: 5lh;
    max-height: 5lh;
    overflow: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding-right: 0.7em
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__text::-webkit-scrollbar {
    width: 8px
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__text::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.icon__offerings__details__half .icon__offer__icon__details__container .icon__offer__details__item__text::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.icon__offerings__details__half .icon__offer__icon__details__container .button__link {
    margin-top: 1.5em
}

@media (min-width:1025px) {
    .icon__offerings {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .icon__offerings__icons__half {
        width: 51.5%;
        -ms-flex-line-pack: center;
        align-content: center;
        padding-block: 2em
    }

    .icon__offerings__icons__half .icon__offer__button__container .swiper-wrapper {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
        min-height: 420px
    }

    .icon__offerings__details__half {
        width: 48.5%
    }

    .icon__offerings__details__half .icon__offer__details__item__content {
        padding-block: 3em
    }

    .icon__offerings__details__half .icon__offer__details__item__text {
        max-width: 660px;
        min-height: 6lh;
        max-height: 6lh
    }
}

@media (min-width:950px) {
    .facilities__reverse .facilities {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        padding-right: 5%
    }
}

@media (min-width:950px) and (min-width:1287.6px) {
    .facilities__reverse .facilities {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

@media (min-width:950px) {
    .facilities__reverse .facilities__section__images__block {
        padding-right: 0
    }

    .facilities__reverse .facilities__navigation {
        right: auto;
        left: 0;
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%)
    }
}

.facilities {
    padding-block: clamp(3em, 7vw, 9em);
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .facilities {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.facilities__section__content__block {
    -ms-flex-line-pack: center;
    align-content: center
}

.facilities__section__content .facilities__section__text__region {
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

.facilities__section__content .facilities__section__text__region.inview,
.inview .facilities__section__content .facilities__section__text__region {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.facilities__section__content .facilities__section__text__region p {
    line-height: 1.5
}

.facilities__section__content .facilities__section__text__region .intro {
    font-weight: 600
}

.facilities__section__content .facilities__single__links {
    margin-top: 2.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2em;
    row-gap: 1em;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 1.4s;
    -o-transition-delay: 1.4s;
    transition-delay: 1.4s
}

.facilities__section__content .facilities__single__links.inview,
.inview .facilities__section__content .facilities__single__links {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.facilities__section__images__block {
    position: relative;
    margin-top: 3em;
    padding-right: 5%
}

@media (min-width:1287.6px) {
    .facilities__section__images__block {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 580px)
    }
}

.facilities__list {
    overflow: visible
}

.facilities__item__image__group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: auto;
    gap: 10px
}

.facilities__item__image__group .facilities__item__image {
    overflow: hidden;
    border-radius: var(--radius-md)
}

.facilities__item__image__group .facilities__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.facilities__item__image__group .facilities__item__image__1 {
    width: 100%;
    aspect-ratio: 580 / 300
}

.facilities__item__image__group .facilities__item__image__2,
.facilities__item__image__group .facilities__item__image__3 {
    width: calc(50% - 5px);
    height: auto;
    aspect-ratio: 275 / 180
}

@media (min-width:769px) {
    .facilities__item__image__1 {
        aspect-ratio: 580 / 240
    }
}

@media (min-width:950px) {
    .facilities {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-line-pack: center;
        align-content: center;
        gap: 2em
    }

    .facilities__section__content__block {
        max-width: 481px
    }

    .facilities__list {
        overflow: hidden
    }

    .facilities__navigation {
        right: 0
    }

    .facilities__section__images__block {
        margin-top: 0;
        max-width: 50%
    }
}

@media (min-width:1301px) {
    .facilities__reverse .facilities__navigation {
        -webkit-transform: translateX(-150%);
        -ms-transform: translateX(-150%);
        transform: translateX(-150%)
    }

    .facilities__item__image__group {
        gap: 30px
    }

    .facilities__item__image__group .facilities__item__image__1 {
        aspect-ratio: 580 / 380
    }

    .facilities__item__image__group .facilities__item__image__2,
    .facilities__item__image__group .facilities__item__image__3 {
        width: calc(50% - 15px)
    }
}

.outcome__objectives {
    padding-inline: 5%;
    max-width: 1200px;
    margin: auto
}

@media (min-width:calc(1200px + 5vw)) {
    .outcome__objectives {
        padding-inline: 0
    }
}

.outcome__objective__list {
    min-height: 290px;
    width: 100%;
    max-width: 400px;
    margin: auto;
    overflow: visible;
    --swiper-item-transition-time: 3s
}

.outcome__objective__list .swiper-wrapper {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 290px
}

.outcome__objective__item.swiper-slide {
    width: 100%
}

.outcome__objective__item.swiper-slide-active .outcome__objective__item__block {
    background-color: var(--col-shade--normal);
    max-width: clamp(300px, 90vw, 400px)
}

.outcome__objective__item.swiper-slide-active .outcome__objective__item__block:before {
    opacity: 1
}

.outcome__objective__item.swiper-slide-active .outcome__objective__item__text>p {
    color: var(--col-sec);
    font-size: 2.5em
}

.outcome__objective__item.swiper-slide-active .outcome__objective__item__text .outcome__objective__item__text__title>p {
    color: #fff;
    font-size: 5em
}

.outcome__objective__item__block {
    position: relative;
    background-color: var(--col-sec);
    aspect-ratio: 400 / 250;
    width: 100%;
    max-width: clamp(240px, 90vw, 300px);
    margin: auto;
    -ms-flex-line-pack: center;
    align-content: center;
    container-type: inline-size;
    -webkit-transition: max-width var(--swiper-item-transition-time) linear, background-color 1s ease;
    -o-transition: max-width var(--swiper-item-transition-time) linear, background-color 1s ease;
    transition: max-width var(--swiper-item-transition-time) linear, background-color 1s ease
}

.outcome__objective__item__block:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(var(--col-shade--darkest)), to(transparent));
    background: -webkit-linear-gradient(top, var(--col-shade--darkest), transparent);
    background: -o-linear-gradient(top, var(--col-shade--darkest), transparent);
    background: linear-gradient(to bottom, var(--col-shade--darkest), transparent);
    opacity: 0.2;
    -webkit-transition: opacity var(--swiper-item-transition-time) ease;
    -o-transition: opacity var(--swiper-item-transition-time) ease;
    transition: opacity var(--swiper-item-transition-time) ease
}

.outcome__objective__item__block:after {
    position: absolute;
    content: "";
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
    margin: auto;
    border: 2px solid #fff;
    z-index: 0
}

.outcome__objective__item__text {
    position: relative;
    text-align: center;
    z-index: 1
}

.outcome__objective__item__text p {
    margin: 0;
    line-height: 1;
    font-size: 1.25em;
    color: var(--col-shade--darkest);
    -webkit-transition: color 1s ease, font-size var(--swiper-item-transition-time) ease;
    -o-transition: color 1s ease, font-size var(--swiper-item-transition-time) ease;
    transition: color 1s ease, font-size var(--swiper-item-transition-time) ease
}

.outcome__objective__item__text .outcome__objective__item__text__title>p {
    position: relative;
    font-family: var(--font-feature);
    font-style: italic;
    font-size: 3.75em;
    color: var(--col-black);
    -webkit-transition: color 1s ease, font-size var(--swiper-item-transition-time) ease;
    -o-transition: color 1s ease, font-size var(--swiper-item-transition-time) ease;
    transition: color 1s ease, font-size var(--swiper-item-transition-time) ease
}

section.core__principles__icons {
    position: relative;
    padding-block: 4em
}

@media (min-width:1025px) {
    section.core__principles__icons {
        padding-block: 8em
    }
}

.core__principles__icons__bg {
    position: relative;
    line-height: 0;
    width: 100%
}

.core__principles__icons__bg .core__principles__icons__date__container {
    overflow: hidden;
    line-height: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    margin: auto
}

.core__principles__icons__bg svg {
    z-index: 3;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%);
    margin: auto;
    max-width: clamp(310px, 90vw, 1346px)
}

.core__principles__icons__bg svg path {
    opacity: 0.5
}

.core__principles__icons__bg__top {
    height: 150px
}

.core__principles__icons__bg__top .core__principles__icons__date__container {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.core__principles__icons__bg__top svg {
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%)
}

.core__principles__icons__bg__top svg path {
    opacity: 0.5
}

.core__principles__icons__bg__top:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 200%;
    width: 100%;
    opacity: 0.5;
    margin: auto;
    background: -webkit-gradient(linear, left bottom, left top, from(var(--col-sec)), to(transparent));
    background: -webkit-linear-gradient(bottom, var(--col-sec), transparent);
    background: -o-linear-gradient(bottom, var(--col-sec), transparent);
    background: linear-gradient(to top, var(--col-sec), transparent)
}

.core__principles__icons__bg__top:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    margin: auto;
    background-color: var(--col-sec)
}

.core__principles__icons__bg__bottom {
    position: absolute
}

.core__principles__icons__bg__bottom svg {
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.core__principles__icons__bg__bottom svg path {
    opacity: 0.15;
    fill: var(--col-sec)
}

.core__principles__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 1080px;
    padding-inline: 5%;
    margin: auto;
    overflow: visible;
    -webkit-transition: var(--cubic-headings);
    -o-transition: var(--cubic-headings);
    transition: var(--cubic-headings);
    -webkit-transition-duration: 2s;
    -o-transition-duration: 2s;
    transition-duration: 2s
}

.inview .core__principles__list {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
}

@media (min-width:calc(1080px + 5vw)) {
    .core__principles__list {
        padding-inline: 0
    }
}

.core__principles__item {
    max-width: clamp(300px, 90%, 320px);
    min-width: 300px;
    position: relative
}

.core__principles__item .core__principles__item__content,
.core__principles__item .core__principles__item__icon {
    -webkit-transform: translateX(-150vw);
    -ms-transform: translateX(-150vw);
    transform: translateX(-150vw);
    -webkit-transition: -webkit-transform 2s ease;
    transition: -webkit-transform 2s ease;
    -o-transition: transform 2s ease;
    transition: transform 2s ease;
    transition: transform 2s ease, -webkit-transform 2s ease
}

.core__principles__item:last-child .core__principles__item__content,
.core__principles__item:last-child .core__principles__item__icon {
    -webkit-transition-delay: 0ms;
    -o-transition-delay: 0ms;
    transition-delay: 0ms
}

.core__principles__item:nth-last-child(2) .core__principles__item__content,
.core__principles__item:nth-last-child(2) .core__principles__item__icon {
    -webkit-transition-delay: 300ms;
    -o-transition-delay: 300ms;
    transition-delay: 300ms
}

.core__principles__item:nth-last-child(3) .core__principles__item__content,
.core__principles__item:nth-last-child(3) .core__principles__item__icon {
    -webkit-transition-delay: 600ms;
    -o-transition-delay: 600ms;
    transition-delay: 600ms
}

.core__principles__item:nth-last-child(4) .core__principles__item__content,
.core__principles__item:nth-last-child(4) .core__principles__item__icon {
    -webkit-transition-delay: 900ms;
    -o-transition-delay: 900ms;
    transition-delay: 900ms
}

.core__principles__item:nth-last-child(5) .core__principles__item__content,
.core__principles__item:nth-last-child(5) .core__principles__item__icon {
    -webkit-transition-delay: 1200ms;
    -o-transition-delay: 1200ms;
    transition-delay: 1200ms
}

.inview .core__principles__item .core__principles__item__content,
.inview .core__principles__item .core__principles__item__icon {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.core__principles__item__icon {
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    max-width: 180px;
    height: 120px;
    max-height: 120px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px
}

.core__principles__item__icon svg {
    width: auto;
    height: 100%;
    margin: auto;
    -o-object-fit: contain;
    object-fit: contain;
    fill: var(--col-shade--normal)
}

.core__principles__item__content {
    position: relative;
    text-align: center;
    padding-top: 30px
}

.core__principles__item__content:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--col-pri);
    border: 4px solid var(--col-sec);
    margin: auto;
    -webkit-transform: translateY(calc(-50% - 2px));
    -ms-transform: translateY(calc(-50% - 2px));
    transform: translateY(calc(-50% - 2px))
}

.core__principles__item__title {
    font-size: clamp(1.875em, 5vw, 2.375em);
    color: var(--col-black)
}

.core__principles__item__text {
    line-height: 1.5
}

.entry__point__image__link__banner {
    position: relative
}

#entry__points__banner__title {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    color: var(--col-phase-black);
    font-size: clamp(1.875em, 7cqw, 2.5em);
    text-align: center;
    z-index: 8;
    -webkit-transform: translateY(-125%);
    -ms-transform: translateY(-125%);
    transform: translateY(-125%);
    padding-inline: 5%;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 1s;
    -o-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

#entry__points__banner__title.inview,
.inview #entry__points__banner__title {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

@media (min-width:769px) {
    #entry__points__banner__title {
        top: clamp(0.7em, 5.4vw, 2em);
        -webkit-transform: translateY(0%);
        -ms-transform: translateY(0%);
        transform: translateY(0%);
        color: #fff;
        text-shadow: 0px 0px 30px black
    }
}

.entry__point__image__link__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: visible
}

.entry__point__image__link__list:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 4px;
    width: 100%;
    background-color: var(--col-off-white)
}

.entry__point__image__link__item {
    position: relative;
    width: 100%;
    height: auto;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    aspect-ratio: 400 / 300;
    overflow: visible
}

@media (min-width:415px) {
    .entry__point__image__link__item {
        width: 50%;
        aspect-ratio: 300 / 400
    }
}

@media (min-width:769px) {
    .entry__point__image__link__item {
        width: 25%;
        aspect-ratio: 370 / 646
    }
}

.entry__point__image__link__item:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background-color: var(--col-pri);
    border: 4px solid var(--col-sec);
    margin: auto;
    -webkit-transform: translateY(calc(50% - 2px)) translateX(-600px);
    -ms-transform: translateY(calc(50% - 2px)) translateX(-600px);
    transform: translateY(calc(50% - 2px)) translateX(-600px);
    opacity: 0;
    z-index: 1;
    -webkit-transition: opacity 1s ease 1s, -webkit-transform 1s ease 1s;
    transition: opacity 1s ease 1s, -webkit-transform 1s ease 1s;
    -o-transition: transform 1s ease 1s, opacity 1s ease 1s;
    transition: transform 1s ease 1s, opacity 1s ease 1s;
    transition: transform 1s ease 1s, opacity 1s ease 1s, -webkit-transform 1s ease 1s
}

.inview .entry__point__image__link__item:after {
    opacity: 1;
    -webkit-transform: translateY(calc(50% - 2px)) translateX(0);
    -ms-transform: translateY(calc(50% - 2px)) translateX(0);
    transform: translateY(calc(50% - 2px)) translateX(0)
}

.entry__point__image__link__item:before {
    opacity: 0;
    position: absolute;
    content: "";
    top: aut;
    right: 0;
    bottom: 0;
    left: 0;
    height: 4px;
    width: 100%;
    background-color: var(--col-off-white)
}

.entry__point__image__link__item__link {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__image img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0.5
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__content p.entry__point__image__link__item__title {
    margin-bottom: 1em
}

@media (min-width:415px) {
    .entry__point__image__link__item__link:hover .entry__point__image__link__item__content p.entry__point__image__link__item__title {
        margin-bottom: 1.6em
    }
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__content .expand__button {
    opacity: 1
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__content .expand__button svg {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0)
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__content .expand__button:before {
    background-color: rgba(var(--col-pri--opac), 0.5)
}

.entry__point__image__link__item__link:hover .entry__point__image__link__item__content .expand__button:after {
    height: 57px;
    opacity: 1
}

.entry__point__image__link__item__image {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #000;
    overflow: hidden
}

.entry__point__image__link__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: opacity 400ms ease, -webkit-transform 400ms ease;
    transition: opacity 400ms ease, -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease, opacity 400ms ease;
    transition: transform 400ms ease, opacity 400ms ease;
    transition: transform 400ms ease, opacity 400ms ease, -webkit-transform 400ms ease
}

.entry__point__image__link__item__overlay {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%
}

.entry__point__image__link__item__overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    margin: auto;
    height: 37.5%;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
    background: -webkit-linear-gradient(top, #000, transparent);
    background: -o-linear-gradient(top, #000, transparent);
    background: linear-gradient(to bottom, #000, transparent);
    z-index: 1
}

.entry__point__image__link__item__overlay:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 49%;
    margin: auto;
    opacity: 0.85;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.entry__point__image__link__item__content {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%
}

.entry__point__image__link__item__content p.entry__point__image__link__item__title {
    margin-block: 0;
    font-size: clamp(2em, 3cqw, 2.5em);
    font-weight: 700;
    color: #fff;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100px;
    margin: 0 auto;
    position: absolute;
    bottom: 2em;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transition: margin-bottom 400ms ease;
    -o-transition: margin-bottom 400ms ease;
    transition: margin-bottom 400ms ease
}

.entry__point__image__link__item__content .expand__button {
    position: absolute;
    bottom: 2em;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

.entry__point__image__link__item__content .expand__button svg {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: -webkit-transform 400ms ease;
    transition: -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease;
    transition: transform 400ms ease;
    transition: transform 400ms ease, -webkit-transform 400ms ease
}

.entry__point__image__link__item__content .expand__button:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: -57px;
    left: 0;
    width: 4px;
    height: 0;
    margin: auto;
    background-color: var(--col-off-white);
    -webkit-transition: height 400ms ease;
    -o-transition: height 400ms ease;
    transition: height 400ms ease
}

@media (min-width:415px) {
    .entry__point__image__link__item__content .expand__button {
        bottom: 4em
    }
}

.stats {
    background-color: var(--col-shade--normal);
    overflow: hidden;
    padding-block: clamp(3em, 6vw, 4.9em)
}

.stats__header {
    min-width: 200px;
    z-index: 44;
    position: relative;
    padding-inline: 5%
}

.section__titles .stats__section__subtitle__region {
    max-width: 700px;
    margin: 0.7em auto 0
}

.section__titles .stats__section__subtitle__region p {
    margin: 0;
    font-size: clamp(1em, 4vw, 1.25em);
    color: #fff;
    line-height: 1.6;
    font-weight: 600
}

.stats__section__button__region {
    margin: auto
}

.stats__container {
    position: relative
}

.stats__container:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: var(--col-shade--darker);
    bottom: 0;
    height: 800px;
    width: 100%
}

.stats__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1em;
    text-align: center;
    word-break: break-word;
    padding-inline: 5%;
    max-width: 1000px;
    margin: auto;
    margin-bottom: 160px;
    margin-top: -60px
}

@media (min-width:calc(1080px + 5vw)) {
    .stats__list {
        padding-inline: 0
    }
}

.stats__list__item {
    container-type: inline-size;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-width: 220px;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    color: #fff;
    -webkit-transform: translateY(50%);
    -ms-transform: translateY(50%);
    transform: translateY(50%);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto
}

.stats__list__item__inner {
    position: relative;
    width: 100%;
    border-radius: 50%;
    width: 220px;
    aspect-ratio: 1/1;
    background-color: var(--col-shade--darkest);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-shadow: 0px 0px 50px rgba(var(--col-pri--opac), 0.2);
    box-shadow: 0px 0px 50px rgba(var(--col-pri--opac), 0.2)
}

.stats__list__item__inner .progress__borders {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 6px solid rgba(var(--col-off-white--opac), 0.2)
}

.stats__list__item__inner .progress__borders svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% + 12px);
    height: calc(100% + 12px);
    -webkit-transform: rotate(-90deg) translate(50%, -50%);
    -ms-transform: rotate(-90deg) translate(50%, -50%);
    transform: rotate(-90deg) translate(50%, -50%)
}

.stats__list__item__inner__number {
    font-size: 2.5em;
    font-variant-numeric: tabular-nums;
    margin: 0;
    line-height: 1;
    text-transform: uppercase;
    color: var(--col-sec);
    font-family: var(--font-feature);
    text-shadow: 0px 0px 30px rgba(0, 0, 0, 0.5)
}

.stats__list__item__inner__title {
    margin: 0.8em 0 0;
    line-height: 1.5;
    text-shadow: 0px 0px 30px rgba(0, 0, 0, 0.5)
}

.why__sp__feature__video__section {
    position: relative;
    background-color: var(--col-shade--normal)
}

@media (min-width:1287.6px) {
    .why__sp__feature__video__section {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.why__sp__feature__video__section:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    margin: auto;
    height: 50%;
    width: 100%
}

.support__us__feature__video {
    position: relative;
    padding-block: clamp(2em, 5vw, 4.5em)
}

@media (min-width:1287.6px) {
    .support__us__feature__video {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.support__us__feature__video:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 150%;
    opacity: 0.5;
    background: -webkit-linear-gradient(98deg, rgba(var(--col-sec--opac), 1) 0%, transparent 90%, transparent 100%);
    background: -o-linear-gradient(98deg, rgba(var(--col-sec--opac), 1) 0%, transparent 90%, transparent 100%);
    background: linear-gradient(-8deg, rgba(var(--col-sec--opac), 1) 0%, transparent 90%, transparent 100%);
    pointer-events: none
}

.feature__video__section {
    position: relative;
    z-index: 1
}

@media (min-width:950px) {
    .support__us__feature__video .feature__video__section {
        -webkit-transform: translateY(42%);
        -ms-transform: translateY(42%);
        transform: translateY(42%);
        margin-top: -28%
    }
}

.section__header.feature__video__header {
    padding-inline: 5%
}

.mason--whyStephenPerse .section__header.feature__video__header {
    display: none;
    min-width: 300px
}

.section__header.feature__video__header .section__titles #feature__video__section__title__prefix {
    color: var(--col-shade--normal)
}

.section__header.feature__video__header .section__titles #feature__video__section__title {
    color: var(--col-black);
    font-size: clamp(2.5em, 6vw, 3.125em)
}

.section__header.feature__video__header .feature__video__text__region {
    color: #000;
    max-width: 1000px;
    margin: 0 0 2em
}

.section__header.feature__video__header .feature__video__text__region p {
    line-height: 1.5
}

@media (min-width:1288px) {
    .section__header.feature__video__header {
        padding-inline: 0
    }
}

.feature__media {
    position: relative;
    width: 100%;
    background: #000;
    aspect-ratio: 1160 / 550;
    -webkit-box-shadow: var(--shadow-md-darker);
    box-shadow: var(--shadow-md-darker)
}

.feature__media:has(.feature__media__video__popout:hover) .feature__media__image img[loading=lazy].lazy--loaded {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05)
}

section.why__sp__opportunities {
    position: relative;
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    section.why__sp__opportunities {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 580px)
    }
}

@media (min-width:1465.2px) {
    section.why__sp__opportunities {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 660px)
    }
}

.opportunities__section__content__block .opportunities__header .section__titles #opportunities__title {
    font-size: clamp(1.875em, 9cqw, 2.5em)
}

.opportunities__section__content__block .opportunities__section__content .opportunities__section__text__region {
    line-height: 1.5
}

.opportunities__section__content__block .opportunities__section__content .opportunities__section__text__region .intro {
    font-weight: 500
}

.opportunities__section__content__block .opportunities__section__content .opportunities__content__button__region {
    position: absolute;
    margin-top: 2em;
    bottom: 0
}

.opportunities__section__image__wall {
    overflow: visible;
    padding-top: 2em;
    padding-bottom: 6em;
    margin-bottom: 2em
}

.opportunities__section__image {
    overflow: hidden;
    position: absolute;
    height: auto
}

.mason--admin .opportunities__section__image {
    position: absolute !important
}

.opportunities__section__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.oportunities__images__top {
    position: relative;
    aspect-ratio: 660 / 330;
    margin-right: 4.54%
}

.oportunities__images__top .opportunities__section__image__top__1 {
    aspect-ratio: 420 / 330;
    top: 0;
    left: 0;
    width: 63.63%
}

.oportunities__images__top .opportunities__section__image__top__2 {
    aspect-ratio: 210 / 150;
    top: 0;
    right: 0;
    width: 31.81%
}

.oportunities__images__top .opportunities__section__image__top__3 {
    aspect-ratio: 210 / 150;
    bottom: 0;
    right: 0;
    width: 31.81%
}

.oportunities__images__bottom {
    position: relative;
    aspect-ratio: 660 / 330
}

.oportunities__images__bottom .opportunities__section__image__bottom__1 {
    aspect-ratio: 315 / 150;
    top: 0;
    left: 0;
    width: 47.73%
}

.oportunities__images__bottom .opportunities__section__image__bottom__2 {
    aspect-ratio: 315 / 150;
    bottom: 0;
    left: 0;
    width: 47.73%
}

.oportunities__images__bottom .opportunities__section__image__bottom__3 {
    aspect-ratio: 315 / 330;
    top: 0;
    right: 0;
    width: 47.73%
}

@media (min-width:1137px) and (min-width:950px) {
    .opportunities__header {
        max-width: clamp(300px, 85vw, 450px)
    }
}

@media (min-width:1137px) {
    .opportunities__section__content__block {
        max-width: 481px;
        padding-left: var(--accent-gap)
    }

    .opportunities__section__content__block .opportunities__section__content .opportunities__content__button__region {
        position: relative;
        bottom: unset
    }

    .why__sp__opportunities {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 3em
    }

    .opportunities__section__image__wall {
        padding-top: 0;
        padding-bottom: 0;
        margin-bottom: 0;
        width: 100%;
        max-width: 660px;
        height: auto;
        aspect-ratio: 660 / 780
    }

    .opportunities__section__image__wall .swiper-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .oportunities__images__top {
        margin-right: 0;
        margin-bottom: 4.54%
    }

    .oportunities__images__bottom {
        aspect-ratio: 660 / 420
    }

    .oportunities__images__bottom .opportunities__section__image__bottom__1 {
        aspect-ratio: 315 / 190
    }

    .oportunities__images__bottom .opportunities__section__image__bottom__2 {
        aspect-ratio: 315 / 200
    }

    .oportunities__images__bottom .opportunities__section__image__bottom__3 {
        aspect-ratio: 315 / 420
    }
}

.why__sp__image__info__links {
    position: relative;
    margin-block: clamp(2em, 5vw, 4.5em);
    padding-inline: 5%
}

@media (min-width:1465.2px) {
    .why__sp__image__info__links {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 660px);
        padding-right: calc(50% - 660px)
    }
}

.why__sp__image__info__links:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 79%;
    background-color: var(--col-pri);
    margin: auto
}

.image__info__links__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2em
}

.image__info__links__item {
    width: calc(50% - 2em);
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 320px;
    min-height: 350px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.image__info__links__item__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: auto;
    width: 100%;
    padding: 30px 40px;
    container-type: inline-size;
    -webkit-box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5)
}

.image__info__links__item__link:focus .image__info__links__item__image img,
.image__info__links__item__link:hover .image__info__links__item__image img {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0.5
}

.image__info__links__item__link:focus .image__info__links__item__overlay,
.image__info__links__item__link:hover .image__info__links__item__overlay {
    opacity: 0.4
}

.image__info__links__item__link:focus .image__info__links__item__content .expand__button,
.image__info__links__item__link:hover .image__info__links__item__content .expand__button {
    opacity: 1
}

.image__info__links__item__link:focus .image__info__links__item__content__text,
.image__info__links__item__link:hover .image__info__links__item__content__text {
    max-height: 6lh;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.image__info__links__item__image {
    background-color: #000
}

.image__info__links__item__image img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease
}

.image__info__links__item__overlay {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    height: 50%;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    opacity: 0.7
}

.image__info__links__item__content {
    position: relative;
    z-index: 1;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.image__info__links__item__content .expand__button.nav__button {
    position: absolute;
    top: 0.5em;
    right: 0.5em;
    opacity: 0;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

.image__info__links__item__content__title {
    font-weight: 500;
    font-size: clamp(1.75em, 8cqi, 2.5em);
    margin: 0
}

@media (min-width:769px) {
    .image__info__links__item__content__title {
        text-wrap-style: balance;
        max-width: 80%
    }
}

p.image__info__links__item__content__text {
    line-height: 1.5;
    margin: 0;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    max-height: 0;
    opacity: 0;
    -webkit-transition: opacity 800ms ease, max-height 800ms ease, -webkit-transform 800ms ease;
    transition: opacity 800ms ease, max-height 800ms ease, -webkit-transform 800ms ease;
    -o-transition: opacity 800ms ease, max-height 800ms ease, transform 800ms ease;
    transition: opacity 800ms ease, max-height 800ms ease, transform 800ms ease;
    transition: opacity 800ms ease, max-height 800ms ease, transform 800ms ease, -webkit-transform 800ms ease
}

p.image__info__links__item__content__text span {
    display: block;
    max-height: 6lh;
    overflow-y: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar
}

p.image__info__links__item__content__text span::-webkit-scrollbar {
    width: 8px
}

p.image__info__links__item__content__text span::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

p.image__info__links__item__content__text span::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.testimonials {
    position: relative;
    margin-block: clamp(2em, 6vw, 4.5em);
    margin-inline: 5%;
    padding-bottom: 2em
}

@media (min-width:1287.6px) {
    .testimonials {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 580px)
    }
}

@media (min-width:1287.6px) {
    .testimonials {
        padding-right: 0;
        margin-right: calc(50% - 580px)
    }
}

.testimonials__header #testimonials__title {
    width: clamp(300px, 83vw, 430px);
    font-size: clamp(1.875em, 9cqw, 2.5em)
}

.testimonials__content__button__region {
    margin-top: calc(2em + 75px)
}

@media (min-width:650px) {
    .testimonials__content__button__region {
        margin-top: 2em
    }
}

@media (min-width:950px) {
    .testimonials__content__button__region {
        position: absolute;
        bottom: 0;
        right: 0
    }
}

.testimonials__navigation {
    position: absolute;
    bottom: -100px;
    left: 0
}

@media (min-width:650px) {
    .testimonials__navigation {
        top: 275px;
        bottom: auto;
        right: 0;
        left: auto
    }
}

@media (min-width:950px) {
    .testimonials__navigation {
        top: -8%
    }
}

.testimonials__images__block {
    margin-top: 2em;
    margin-bottom: 0.5em;
    width: 100%;
    height: auto
}

.testimonial__image__list,
.testimonial__image__list__large {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    opacity: 0;
    -webkit-transition: var(--cubic-headings);
    -o-transition: var(--cubic-headings);
    transition: var(--cubic-headings)
}

.inview .testimonial__image__list,
.inview .testimonial__image__list__large {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.testimonial__image__list__large {
    display: none
}

.testimonial__image__list {
    min-width: 0;
    min-height: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    overflow: visible
}

@media (min-width:415px) {
    .testimonial__image__list {
        height: 300px
    }
}

.testimonial__image__item.swiper-slide {
    margin-right: 20px;
    aspect-ratio: 204 / 250;
    max-width: 204px;
    -webkit-transition: aspect-ratio 400ms ease, max-width 400ms ease, min-height 400ms ease;
    -o-transition: aspect-ratio 400ms ease, max-width 400ms ease, min-height 400ms ease;
    transition: aspect-ratio 400ms ease, max-width 400ms ease, min-height 400ms ease;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    -webkit-transition: max-height 400ms ease;
    -o-transition: max-height 400ms ease;
    transition: max-height 400ms ease
}

.testimonial__image__item.swiper-slide:last-child {
    margin-right: calc(100% - 224px)
}

.testimonial__image__item.swiper-slide-active {
    aspect-ratio: 430 / 530;
    max-width: 234px;
    height: 100%
}

.testimonial__image__item.swiper-slide-active .testimonial__image__item__image:before {
    opacity: 0
}

@media (min-width:950px) {
    .testimonials__images__block {
        position: absolute;
        top: 0em;
        right: 0;
        aspect-ratio: 664 / 530;
        width: 664px;
        max-width: 50vw;
        overflow: hidden;
        margin-top: 0;
        margin-bottom: 0;
        -webkit-transform: translateY(-10%);
        -ms-transform: translateY(-10%);
        transform: translateY(-10%)
    }

    .testimonial__image__list__large {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        width: 64.76%;
        height: auto;
        max-width: 430px
    }

    .testimonial__image__list {
        aspect-ratio: 204 / 250;
        max-width: 204px;
        width: 30.72%;
        margin-right: 0;
        height: -webkit-fit-content;
        height: -moz-fit-content;
        height: fit-content
    }

    .testimonial__image__item.swiper-slide {
        aspect-ratio: 204 / 250;
        width: 100%;
        height: auto;
        margin-right: 0;
        margin-left: auto
    }

    .testimonial__image__item.swiper-slide:last-child {
        margin-right: 0
    }

    .testimonial__image__item.swiper-slide-active {
        display: none
    }

    .testimonial__image__item.swiper-slide-prev .testimonial__image__item__image {
        opacity: 0
    }
}

.testimonial__image__large__item__image {
    width: 100%;
    height: 100%
}

.testimonial__image__large__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.testimonial__image__item__image {
    width: 100%;
    height: 100%
}

.testimonial__image__item__image:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--col-shade--normal);
    opacity: 1;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease
}

.testimonial__image__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    mix-blend-mode: luminosity
}

.testimonials__content__block {
    margin-top: 1.5em;
    visibility: hidden;
    opacity: 0;
    scale: 0.5;
    -webkit-transition: 1.4s ease 1s;
    -o-transition: 1.4s ease 1s;
    transition: 1.4s ease 1s
}

.inview .testimonials__content__block {
    opacity: 1;
    scale: 1
}

.testimonial__text__list {
    visibility: visible;
    position: relative;
    width: 100%;
    height: auto;
    background-color: var(--col-off-white);
    margin-left: 0
}

.testimonial__text__list:before {
    position: absolute;
    content: "";
    top: 5px;
    right: 5px;
    bottom: 5px;
    left: 5px;
    border: 2px solid var(--col-pri)
}

@media (min-width:950px) {
    .testimonial__text__list {
        aspect-ratio: 619 / 513;
        width: 619px;
        max-width: 57%;
        -webkit-transform: translateX(-2em);
        -ms-transform: translateX(-2em);
        transform: translateX(-2em)
    }

    .testimonial__text__list:before {
        position: absolute;
        content: "";
        top: 10px;
        right: 10px;
        bottom: 10px;
        left: 10px
    }
}

.testimonial__text__item__block {
    position: relative;
    padding: 30px
}

@media (min-width:769px) {
    .testimonial__text__item__block {
        padding: 45px
    }
}

.testimonial__text__item__quote__icon {
    position: relative;
    margin-bottom: 1em;
    color: var(--col-pri);
    aspect-ratio: 72 /60;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: clamp(35px, 5cqw, 72px)
}

.testimonial__text__item__quote__icon svg {
    width: 41.666%
}

.testimonial__text__item__quote {
    container-type: inline-size
}

.testimonial__text__item__quote p {
    font-size: clamp(1.125em, 4.8cqw, 1.5625em);
    line-height: 1.4;
    margin-block: 0.5em;
    font-weight: 600;
    font-style: italic;
    max-height: 6lh;
    overflow: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--normal);
    -ms-overflow-style: -ms-autohiding-scrollbar
}

.testimonial__text__item__quote p::-webkit-scrollbar {
    width: 8px
}

.testimonial__text__item__quote p::-webkit-scrollbar-track {
    background-color: var(--col-shade--normal) !important;
    border-radius: 0
}

.testimonial__text__item__quote p::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.testimonial__text__item__author span {
    position: relative;
    color: var(--col-shade--darker);
    font-size: clamp(1em, 4cqw, 1.125em);
    margin-top: 1em
}

.button__link.testimonial__text__item__button__link {
    margin-top: 1.5em
}

.button__link.testimonial__text__item__button__link a {
    color: var(--col-shade--normal)
}

.button__link.testimonial__text__item__button__link a:before {
    border-color: var(--col-shade--normal);
    background-color: #fff
}

.button__link.testimonial__text__item__button__link a:hover {
    color: #fff
}

.button__link.testimonial__text__item__button__link a:hover:before {
    background-color: var(--col-shade--normal)
}

.button__link.testimonial__text__item__button__link:has(a[href=""]) {
    display: none
}

.support__page__feature__footer__dark {
    margin-top: -7em
}

.support__page__feature__footer__dark .feature__footer__dark {
    padding-top: 8em
}

.feature__footer__dark {
    position: relative
}

.feature__footer__bg__container .feature__footer__bg__image {
    background-color: var(--col-black)
}

.feature__footer__bg__container .feature__footer__bg__image img {
    opacity: 0.3
}

.feature__footer__bg__container .feature__footer__bg__image__overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.25;
    background: -webkit-radial-gradient(center, transparent, #000);
    background: -o-radial-gradient(center, transparent, #000);
    background: radial-gradient(to center, transparent, #000)
}

.feature__footer__bg__container .feature__footer__bg__image__overlay:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 48.7%;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.feature__footer__dark__inner__content {
    position: relative;
    z-index: 1;
    color: #fff;
    text-align: center;
    padding-block: 8em;
    padding-inline: 5%
}

.feature__footer__dark__text__region {
    max-width: 700px;
    margin: auto;
    margin-top: 0.5em
}

.feature__footer__dark__text__region p {
    line-height: 1.5;
    margin-block: 0.5em
}

.feature__footer__dark__content__button__region {
    margin: 2em auto 0
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] {
    --col-shade--darker: var(--col-db-shade--darker)
}

.mason--admissions .landing__page {
    position: relative;
    background-color: var(--col-shade--darker);
    color: #fff
}

.mason--admissions .landing__page .admissions__bg__underlay {
    position: absolute;
    inset: 0;
    pointer-events: none
}

.mason--admissions .landing__page .admissions__bg__underlay__top {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--col-sha--opac), 1)), to(rgba(var(--col-sha--opac), 0)));
    background: -webkit-linear-gradient(top, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    background: -o-linear-gradient(top, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    background: linear-gradient(to bottom, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    min-height: clamp(500px, 50vw, 1000px)
}

.mason--admissions .landing__page .admissions__bg__underlay__top:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(#000), to(transparent));
    background: -webkit-linear-gradient(top, #000, transparent);
    background: -o-linear-gradient(top, #000, transparent);
    background: linear-gradient(to bottom, #000, transparent);
    height: clamp(250px, 50vw, 550px)
}

.mason--admissions .landing__page .admissions__bg__underlay__bottom {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(var(--col-sha--opac), 1)), to(rgba(var(--col-sha--opac), 0)));
    background: -webkit-linear-gradient(bottom, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    background: -o-linear-gradient(bottom, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    background: linear-gradient(to top, rgba(var(--col-sha--opac), 1), rgba(var(--col-sha--opac), 0));
    min-height: clamp(500px, 50vw, 1000px)
}

.mason--admissions .landing__page .admissions__bg__underlay__bottom:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent);
    height: clamp(250px, 50vw, 550px)
}

section.admissions__content__area {
    position: relative;
    padding-top: clamp(2em, 5vw, 4.5em);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: -5px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

@media (min-width:1025px) {
    section.admissions__content__area {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.admissions__bg__image__container {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.admissions__bg__image__container .admissions__bg__image {
    opacity: 0.5;
    mix-blend-mode: luminosity;
    background-color: rgba(var(--col-shade--darker), 1)
}

.admissions__bg__image__container .admissions__bg__image:before {
    top: 0 !important;
    bottom: 0 !important;
    margin: auto !important
}

.admissions__bg__image__container .admissions__bg__image img {
    display: none
}

.mason--admissions[data-active-title="Early Years"] .admissions__bg__image__container .admissions__bg__image img.ey__bg__image {
    display: block
}

.mason--admissions[data-active-title="Cambridge Junior School"] .admissions__bg__image__container .admissions__bg__image img.sp__jr__bg__image {
    display: block
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__bg__image__container .admissions__bg__image img.db__jr__bg__image {
    display: block
}

.mason--admissions[data-active-title="Senior School"] .admissions__bg__image__container .admissions__bg__image img.sr__bg__image {
    display: block
}

.mason--admissions[data-active-title="Sixth Form"] .admissions__bg__image__container .admissions__bg__image img.sixth__bg__image {
    display: block
}

.mason--admissions[data-active-title="Sixth Form Boarding"] .admissions__bg__image__container .admissions__bg__image img.boarding__bg__image {
    display: block
}

.admissions__bg__image__container .admissions__image__overlay {
    background-color: rgba(var(--col-shade--darker), 1)
}

.process__filter__buttons {
    --blockPadding: 2em;
    position: relative;
    padding-block: var(--blockPadding);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 1em;
    padding-inline: 2%
}

.process__filter__buttons .filter__button.button__link {
    cursor: pointer;
    width: 50%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.process__filter__buttons .filter__button.button__link a {
    margin: auto;
    height: 90px;
    width: 100%;
    max-width: 196px;
    color: #fff;
    padding: 0.75em 0.3em;
    line-height: 1.5;
    width: 100%;
    height: 100%;
    text-transform: capitalize;
    font-size: 1.25em;
    letter-spacing: 0;
    text-wrap-style: balance
}

.process__filter__buttons .filter__button.button__link a:before {
    border-color: transparent;
    background-color: var(--col-shade--normal);
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    opacity: 0;
    -webkit-transition: opacity 400ms ease, border-color 300ms ease, -webkit-transform 300ms ease;
    transition: opacity 400ms ease, border-color 300ms ease, -webkit-transform 300ms ease;
    -o-transition: opacity 400ms ease, transform 300ms ease, border-color 300ms ease;
    transition: opacity 400ms ease, transform 300ms ease, border-color 300ms ease;
    transition: opacity 400ms ease, transform 300ms ease, border-color 300ms ease, -webkit-transform 300ms ease
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .process__filter__buttons .filter__button.button__link a:before {
    background-color: #4f708f;
    border-color: var(--col-db-sec)
}

.process__filter__buttons .filter__button.button__link.active a:before,
.process__filter__buttons .filter__button.button__link:hover a:before {
    border-color: var(--col-pri);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    opacity: 1
}

@media (min-width:415px) {
    .process__filter__buttons {
        margin-inline: 5%
    }
}

@media (min-width:415px) and (min-width:1376.4px) {
    .process__filter__buttons {
        padding-inline: 0;
        margin-left: calc(50% - 620px);
        margin-right: calc(50% - 620px)
    }
}

@media (min-width:769px) {
    .process__filter__buttons .filter__button.button__link {
        width: 33%
    }
}

@media (min-width:1301px) {
    .process__filter__buttons {
        padding-inline: 0;
        --maxButtonWidth: 196px
    }

    .process__filter__buttons:before {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        bottom: auto;
        left: 0;
        width: calc(100% - var(--maxButtonWidth));
        height: 2px;
        margin: auto;
        background-color: #fff;
        -webkit-transform: scale(0);
        -ms-transform: scale(0);
        transform: scale(0);
        -webkit-transition: -webkit-transform 1s ease 600ms;
        transition: -webkit-transform 1s ease 600ms;
        -o-transition: transform 1s ease 600ms;
        transition: transform 1s ease 600ms;
        transition: transform 1s ease 600ms, -webkit-transform 1s ease 600ms
    }

    .inview .process__filter__buttons:before {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1)
    }

    .process__filter__buttons:after {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        bottom: auto;
        left: 0;
        width: 2px;
        height: 66px;
        background-color: #fff;
        margin: auto;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        transform: translateY(-100%);
        scale: 1 0;
        -webkit-transition: scale 600ms ease;
        -o-transition: scale 600ms ease;
        transition: scale 600ms ease
    }

    .inview .process__filter__buttons:after {
        scale: 1 1
    }

    .process__filter__buttons .filter__button.button__link {
        max-width: var(--maxButtonWidth)
    }

    .process__filter__buttons .filter__button.button__link:before {
        position: absolute;
        content: "";
        top: calc(0px - var(--blockPadding));
        right: 0;
        bottom: auto;
        left: 0;
        width: 2px;
        background-color: #fff;
        margin: auto;
        height: 0;
        -webkit-transition: height 500ms ease 1s;
        -o-transition: height 500ms ease 1s;
        transition: height 500ms ease 1s
    }

    .inview .process__filter__buttons .filter__button.button__link:before {
        height: 35px
    }

    .process__filter__buttons .filter__button.button__link a {
        z-index: 1;
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px);
        opacity: 0;
        -webkit-transition: opacity 500ms ease 1600ms, -webkit-transform 500ms ease 1600ms;
        transition: opacity 500ms ease 1600ms, -webkit-transform 500ms ease 1600ms;
        -o-transition: opacity 500ms ease 1600ms, transform 500ms ease 1600ms;
        transition: opacity 500ms ease 1600ms, transform 500ms ease 1600ms;
        transition: opacity 500ms ease 1600ms, transform 500ms ease 1600ms, -webkit-transform 500ms ease 1600ms
    }

    .inview .process__filter__buttons .filter__button.button__link a,
    .process__filter__buttons .filter__button.button__link a.inview {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}

.process__content__region {
    margin-left: var(--accent-gap)
}

.admissions__header {
    padding-inline: 5%
}

@media (min-width:1376.4px) {
    .admissions__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 620px);
        padding-right: calc(50% - 620px)
    }
}

.admissions__header .section__titles:before {
    top: 0.8em;
    height: calc(85%)
}

.admissions__header #adminssions__title {
    position: relative;
    color: #fff
}

.admissions__header .content__path__item {
    color: var(--col-shade--normal)
}

.admissions__header .content__path__item.content__path__item--final {
    color: var(--col-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__header .section__titles:before {
    background-color: var(--col-db-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__header .content__path .content__path__item {
    color: var(--col-db-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__header .content__path .content__path__item.content__path__item--final {
    color: var(--col-db-sec)
}

.admissions__text__region {
    position: relative;
    padding-inline: 5%
}

@media (min-width:1376.4px) {
    .admissions__text__region {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 620px);
        padding-right: calc(50% - 620px)
    }
}

.admissions__text__region p {
    line-height: 1.5
}

section.process__cards {
    position: relative;
    z-index: 1;
    margin-top: 3em;
    margin-bottom: 0.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-block: clamp(2em, 5vw, 4.5em);
    margin-inline: 5%
}

@media (min-width:1376.4px) {
    section.process__cards {
        padding-inline: 0;
        margin-left: calc(50% - 620px);
        margin-right: calc(50% - 620px)
    }
}

.admissions__steps__center {
    position: absolute;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    width: 4px;
    background-color: #fff
}

.admissions__steps__center .admissions__steps__center__point {
    border-radius: 50%;
    width: 12px;
    height: 12px;
    display: block;
    position: absolute;
    left: 2px;
    background-color: rgba(255, 255, 255, 0.2);
    border: 0px rgba(255, 255, 255, 0.2) solid;
    -webkit-transition: background-color 350ms ease, border-width 350ms ease, width 350ms ease, height 350ms ease;
    -o-transition: background-color 350ms ease, border-width 350ms ease, width 350ms ease, height 350ms ease;
    transition: background-color 350ms ease, border-width 350ms ease, width 350ms ease, height 350ms ease
}

.admissions__steps__center .admissions__steps__center__point.active {
    width: 22px;
    height: 22px;
    border-width: 4px;
    background-color: var(--col-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__steps__center .admissions__steps__center__point.active {
    background-color: var(--col-db-pri)
}

.admissions__steps__center .admissions__steps__center__point--top {
    top: -6px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.admissions__steps__center .admissions__steps__center__point--end {
    bottom: -6px;
    -webkit-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%)
}

.admissions__steps__center .admissions__steps__center__progress {
    position: absolute;
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--col-pri);
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__steps__center .admissions__steps__center__progress {
    background-color: var(--col-db-pri)
}

.admissions__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.admissions__list__left {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

.admissions__list__right {
    display: none;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.admissions__card__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2em
}

@media (min-width:769px) {
    .admissions__steps__center {
        left: 0;
        right: 0;
        margin: 0 auto
    }

    .admissions__list {
        width: 50%
    }

    .admissions__card__list {
        width: 100%;
        gap: 3.5em
    }

    .admissions__list__left .admissions__card__list {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start
    }

    .admissions__list__left .admissions__card__item:nth-child(2n) {
        display: none
    }

    .admissions__list__right {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .admissions__list__right .admissions__card__list {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end
    }

    .admissions__list__right .admissions__card__item:nth-child(odd) {
        display: none
    }
}

.active__school__logo {
    position: relative;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    margin-bottom: 3em;
    padding-right: 20px;
    width: 100%;
    max-width: 550px;
    aspect-ratio: 351 / 210.96;
    height: auto
}

@media (min-width:769px) {
    .active__school__logo {
        padding-inline: 0;
        margin-left: auto
    }
}

.active__school__logo img[loading=lazy].lazy--loaded {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: unset;
    width: clamp(200px, 80%, 351px);
    aspect-ratio: 351 / 210.96;
    height: auto;
    max-width: 351px;
    max-height: 219.96px;
    opacity: 0;
    z-index: 0;
    margin: auto
}

.mason--admissions[data-active-title="Early Years"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__ey {
    opacity: 1;
    z-index: 2
}

.mason--admissions[data-active-title="Cambridge Junior School"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__junior {
    opacity: 1;
    z-index: 2
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__db {
    opacity: 1;
    z-index: 2
}

.mason--admissions[data-active-title="Senior School"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__senior {
    opacity: 1;
    z-index: 2
}

.mason--admissions[data-active-title="Sixth Form"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__sixth {
    opacity: 1;
    z-index: 2
}

.mason--admissions[data-active-title="Sixth Form Boarding"] .active__school__logo img[loading=lazy].lazy--loaded.active__school__logo__bording {
    opacity: 1;
    z-index: 2
}

.admissions__card__item__block {
    opacity: 0;
    -webkit-transition: opacity 800ms ease, -webkit-transform 800ms ease;
    transition: opacity 800ms ease, -webkit-transform 800ms ease;
    -o-transition: opacity 800ms ease, transform 800ms ease;
    transition: opacity 800ms ease, transform 800ms ease;
    transition: opacity 800ms ease, transform 800ms ease, -webkit-transform 800ms ease;
    -webkit-transition-delay: 1s;
    -o-transition-delay: 1s;
    transition-delay: 1s
}

.admissions__list__left .admissions__card__item__block {
    -webkit-transform: translateX(-40px);
    -ms-transform: translateX(-40px);
    transform: translateX(-40px)
}

.admissions__list__right .admissions__card__item__block {
    -webkit-transform: translateX(40px);
    -ms-transform: translateX(40px);
    transform: translateX(40px)
}

.inview .admissions__card__item__block {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
}

.admissions__card__item {
    display: none
}

.admissions__card__item.active {
    display: block
}

@media (min-width:769px) {
    .admissions__card__item {
        width: 100%
    }
}

.admissions__card__item__block__container {
    position: relative
}

.horiz__point__line__guide {
    position: absolute;
    top: 0;
    right: 0;
    aspect-ratio: 550 / 300;
    width: 90%;
    height: auto
}

.horiz__point__line__guide .horiz__point__line {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: auto;
    width: 0;
    height: 4px;
    background-color: #fff;
    -webkit-transform: translateY(4px) translateX(-2px);
    -ms-transform: translateY(4px) translateX(-2px);
    transform: translateY(4px) translateX(-2px);
    -webkit-transition: width 500ms ease-in-out;
    -o-transition: width 500ms ease-in-out;
    transition: width 500ms ease-in-out;
    -webkit-transition-delay: 1.3s;
    -o-transition-delay: 1.3s;
    transition-delay: 1.3s
}

.horiz__point__line__guide .horiz__point__line:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: auto;
    background-color: transparent;
    height: 100%;
    width: 0;
    z-index: 3;
    -webkit-transition: width 400ms ease 1.9s, background-color 400ms 1s;
    -o-transition: width 400ms ease 1.9s, background-color 400ms 1s;
    transition: width 400ms ease 1.9s, background-color 400ms 1s
}

.horiz__point__line__guide .horiz__point__line:after {
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    bottom: auto;
    left: auto;
    width: 16px;
    height: auto;
    aspect-ratio: 1/1;
    border-radius: 50%;
    background-color: #fff;
    margin: auto;
    -webkit-transform: translateY(-50%) translateX(50%) scale(0);
    -ms-transform: translateY(-50%) translateX(50%) scale(0);
    transform: translateY(-50%) translateX(50%) scale(0);
    -webkit-transition: background-color 400ms 1.8s, -webkit-transform 400ms ease 1s;
    transition: background-color 400ms 1.8s, -webkit-transform 400ms ease 1s;
    -o-transition: transform 400ms ease 1s, background-color 400ms 1.8s;
    transition: transform 400ms ease 1s, background-color 400ms 1.8s;
    transition: transform 400ms ease 1s, background-color 400ms 1.8s, -webkit-transform 400ms ease 1s
}

.admissions__list__right .horiz__point__line__guide .horiz__point__line:before {
    position: absolute;
    content: "";
    top: 0;
    right: auto;
    bottom: 0;
    left: 0
}

.admissions__list__right .horiz__point__line__guide .horiz__point__line:after {
    -webkit-transform: translateY(-50%) translateX(-50%) scale(0);
    -ms-transform: translateY(-50%) translateX(-50%) scale(0);
    transform: translateY(-50%) translateX(-50%) scale(0)
}

.inview .horiz__point__line__guide .horiz__point__line {
    width: 70px
}

.inview .horiz__point__line__guide .horiz__point__line:before {
    width: 100%;
    background-color: var(--col-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .inview .horiz__point__line__guide .horiz__point__line:before {
    background-color: var(--col-db-pri)
}

.inview .horiz__point__line__guide .horiz__point__line:after {
    -webkit-transform: translateY(-50%) translateX(50%) scale(1);
    -ms-transform: translateY(-50%) translateX(50%) scale(1);
    transform: translateY(-50%) translateX(50%) scale(1);
    background-color: var(--col-pri)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .inview .horiz__point__line__guide .horiz__point__line:after {
    background-color: var(--col-db-pri)
}

.admissions__list__right .inview .horiz__point__line__guide .horiz__point__line:after {
    -webkit-transform: translateY(-50%) translateX(-50%) scale(1);
    -ms-transform: translateY(-50%) translateX(-50%) scale(1);
    transform: translateY(-50%) translateX(-50%) scale(1)
}

@media (min-width:769px) {
    .horiz__point__line__guide {
        max-width: 550px
    }

    .horiz__point__line__guide .horiz__point__line {
        width: 0;
        -webkit-transform: translateY(4px) translateX(0);
        -ms-transform: translateY(4px) translateX(0);
        transform: translateY(4px) translateX(0)
    }

    .admissions__list__right .horiz__point__line__guide {
        left: 0;
        right: auto
    }

    .admissions__list__right .horiz__point__line__guide .horiz__point__line {
        -webkit-transform: translateY(4px) translateX(0);
        -ms-transform: translateY(4px) translateX(0);
        transform: translateY(4px) translateX(0);
        position: absolute;
        content: "";
        top: auto;
        right: auto;
        bottom: 0;
        left: 0
    }

    .admissions__list__right .horiz__point__line__guide .horiz__point__line:after {
        position: absolute;
        content: "";
        top: 50%;
        right: auto;
        bottom: auto;
        left: 0;
        -webkit-transform: translateY(-50%) translateX(-50%);
        -ms-transform: translateY(-50%) translateX(-50%);
        transform: translateY(-50%) translateX(-50%)
    }
}

.admissions__card__item__block {
    -webkit-box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.3);
    background-color: var(--col-off-white);
    color: var(--col-black);
    width: 90%
}

@media (min-width:769px) {
    .admissions__card__item__block {
        max-width: 550px
    }

    .admissions__card__list__right .admissions__card__item__block {
        margin-left: auto
    }
}

.admissions__card__item__image {
    aspect-ratio: 550 / 300;
    height: auto
}

.admissions__card__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.admissions__card__item__content {
    position: relative;
    padding: 2em
}

.admissions__card__item__title {
    font-size: clamp(1.375em, 10cqw, 1.875em);
    margin: 0 0 0.3em
}

.admissions__card__item__subtitle {
    font-size: clamp(1.125em, 7cqw, 1.25em);
    margin: 0;
    font-weight: 500;
    color: var(--col-shade--normal)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__card__item__subtitle {
    color: var(--col-db-shade--darker)
}

.admissions__card__item__text__region p {
    line-height: 1.5
}

.admissions__card__item__button__link.button__link a[href=""] {
    display: none
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__card__item__button__link.button__link a {
    color: var(--col-db-shade--dark)
}

.mason--admissions[data-active-title="Dame Bradbury's Junior School"] .admissions__card__item__button__link.button__link a:before {
    background-color: rgba(var(--col-db-ter--opac), 0.2);
    border-color: var(--col-db-ter)
}

.admissions__explore__links {
    position: relative;
    background-color: #fff
}

.admissions__explore__links:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 57.6%;
    background: -webkit-gradient(linear, left bottom, left top, from(var(--col-sec)), to(transparent));
    background: -webkit-linear-gradient(bottom, var(--col-sec), transparent);
    background: -o-linear-gradient(bottom, var(--col-sec), transparent);
    background: linear-gradient(to top, var(--col-sec), transparent)
}

section.parents__welcome {
    position: relative;
    padding-block: 4.5em;
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    section.parents__welcome {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.parents__welcome__image__container.editable__bg__container {
    background-color: rgba(var(--col-sec--opac), 0.3);
    height: 110%
}

.parents__welcome__image__container.editable__bg__container .parents__welcome__bg__image {
    mix-blend-mode: luminosity;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    height: 100%
}

.parents__welcome__image__container.editable__bg__container .parents__welcome__image__overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    width: 35%;
    background: -webkit-gradient(linear, left top, right top, from(var(--col-off-white)), to(transparent));
    background: -webkit-linear-gradient(left, var(--col-off-white), transparent);
    background: -o-linear-gradient(left, var(--col-off-white), transparent);
    background: linear-gradient(to right, var(--col-off-white), transparent)
}

.parents__welcome__image__container.editable__bg__container .parents__welcome__image__overlay:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 35%;
    background: -webkit-gradient(linear, left bottom, left top, from(var(--col-off-white)), to(transparent));
    background: -webkit-linear-gradient(bottom, var(--col-off-white), transparent);
    background: -o-linear-gradient(bottom, var(--col-off-white), transparent);
    background: linear-gradient(to top, var(--col-off-white), transparent)
}

.parents__welcome__content {
    position: relative;
    max-width: 780px
}

.parents__welcome__text__region {
    line-height: 1.5;
    margin-block: 1em
}

.parents__welcome__text__region p.intro {
    font-weight: 500
}

.parents__welcome__single__links {
    margin-top: 2.5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2em;
    row-gap: 1em;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width:769px) {
    .parents__header {
        margin-left: var(--accent-gap)
    }

    .parents__welcome__image__container.editable__bg__container {
        width: 50%;
        left: auto
    }
}

.parent__systems {
    position: relative;
    z-index: 4;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(var(--col-sec--opac), 0.5)), to(rgba(var(--col-sec--opac), 0)));
    background: -webkit-linear-gradient(bottom, rgba(var(--col-sec--opac), 0.5), rgba(var(--col-sec--opac), 0));
    background: -o-linear-gradient(bottom, rgba(var(--col-sec--opac), 0.5), rgba(var(--col-sec--opac), 0));
    background: linear-gradient(to top, rgba(var(--col-sec--opac), 0.5), rgba(var(--col-sec--opac), 0))
}

.parent__systems__header {
    margin-left: var(--accent-gap);
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .parent__systems__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.parent__systems__header .section__titles {
    margin-left: var(--accent-gap)
}

.system__titles__container {
    margin-inline: 5%
}

@media (min-width:1287.6px) {
    .system__titles__container {
        padding-inline: 0;
        margin-left: calc(50% - 580px);
        margin-right: calc(50% - 580px)
    }
}

.system__title__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-block: 1.5em;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.system__title__list:before {
    position: absolute;
    content: "";
    top: auto;
    right: 17px;
    bottom: 0;
    left: 17px;
    height: 2px;
    background-color: var(--col-sec)
}

.system__title__item__button {
    position: relative;
    padding: 17px 17px 8px;
    color: var(--col-shade--darker);
    font-size: clamp(1.125em, 5vw, 1.25em);
    font-weight: 500
}

.system__title__item__button:before {
    position: absolute;
    content: "";
    top: auto;
    right: 17px;
    bottom: 0;
    left: 17px;
    height: 2px;
    background: var(--col-shade--darker);
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    opacity: 0;
    -webkit-transition: opacity 300ms ease, -webkit-transform 300ms ease;
    transition: opacity 300ms ease, -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease, opacity 300ms ease;
    transition: transform 300ms ease, opacity 300ms ease;
    transition: transform 300ms ease, opacity 300ms ease, -webkit-transform 300ms ease
}

.system__title__item__button:focus {
    outline: 1px dotted rgba(0, 0, 0, 0.5)
}

.system__title__item__button:hover:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    opacity: 1
}

.system__title__item__button.active {
    color: #002020
}

.system__title__item__button.active:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    opacity: 1
}

.system__details__container {
    position: relative;
    margin-inline: 5%
}

@media (min-width:1332px) {
    .system__details__container {
        padding-inline: 0;
        margin-left: calc(50% - 600px);
        margin-right: calc(50% - 600px)
    }
}

.system__details__list {
    background-color: var(--col-shade--darker)
}

.system__details__item__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    color: #fff
}

.system__details__item__content {
    padding: clamp(2em, 6cqw, 5.5em)
}

.system__details__item__title {
    color: var(--col-sec);
    font-size: clamp(1.375em, 8cqw, 1.875em);
    font-weight: 600;
    margin-top: 0
}

p.system__details__item__text {
    line-height: 1.5;
    font-weight: 300
}

.system__details__item__button__link.button__link {
    margin-top: 1.5em
}

.system__details__item__image {
    position: relative;
    aspect-ratio: 100 / 50;
    line-height: 0;
    overflow: hidden;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch
}

.system__details__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.system__details__item__image:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.7;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #000), color-stop(40.96%, rgba(0, 0, 0, 0.14)), to(rgba(0, 0, 0, 0)));
    background: -webkit-linear-gradient(left, #000 0, rgba(0, 0, 0, 0.14) 40.96%, rgba(0, 0, 0, 0) 100%);
    background: -o-linear-gradient(left, #000 0, rgba(0, 0, 0, 0.14) 40.96%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to right, #000 0, rgba(0, 0, 0, 0.14) 40.96%, rgba(0, 0, 0, 0) 100%)
}

.systems__navigation .systems__pagination {
    margin-bottom: 0
}

.system__logo__images__container {
    margin: auto;
    padding-inline: 5%
}

@media (min-width:calc(870px + 5vw)) {
    .system__logo__images__container {
        padding-inline: 0
    }
}

.system__logo__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1em;
    margin-bottom: 3em
}

@media (min-width:1025px) {
    .system__logo__list {
        -webkit-transform: translateY(50%);
        -ms-transform: translateY(50%);
        transform: translateY(50%);
        margin-bottom: 0;
        gap: clamp(1em, 3.4cqw, 3.3em)
    }
}

.system__logo__item__block {
    position: relative;
    display: block;
    max-width: clamp(140px, 15vw, 180px);
    aspect-ratio: 1/1
}

.system__logo__item__block:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    -webkit-box-shadow: var(--shadow);
    box-shadow: var(--shadow);
    -webkit-transition: -webkit-transform 400ms ease;
    transition: -webkit-transform 400ms ease;
    -o-transition: transform 400ms ease;
    transition: transform 400ms ease;
    transition: transform 400ms ease, -webkit-transform 400ms ease
}

.system__logo__item__block:hover:before {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1)
}

.system__logo__item__image {
    position: relative;
    width: 100%;
    height: 100%;
    -ms-flex-line-pack: center;
    align-content: center;
    padding: 2em 1.4em
}

.system__logo__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media (min-width:769px) {
    .system__details__item__block {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .system__details__item__content {
        width: 50%
    }

    .system__details__item__image {
        aspect-ratio: 600 / 549;
        width: 50%;
        height: auto
    }
}

.cal__references {
    position: relative;
    padding-inline: 5%;
    margin-block: 1em
}

@media (min-width:1287.6px) {
    .cal__references {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.cal__references p {
    margin-block: 0.1em;
    letter-spacing: 0.02em
}

.events {
    position: relative;
    background-color: var(--col-sec);
    padding-block: 4em
}

.events:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right bottom, from(rgba(var(--col-off-white--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: -o-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: linear-gradient(to bottom right, rgba(var(--col-off-white--opac), 1), transparent)
}

@media (min-width:950px) {
    .events {
        padding-top: 12em
    }
}

.events__header {
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .events__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.events__header .events__header__info {
    position: relative
}

.events__header .events__header__info .events__header__text__region {
    margin-top: 1em
}

.events__header .events__header__info .events__header__text__region p {
    line-height: 1.5
}

.events__header .events__header__info .events__header__text__region p:last-child {
    margin-bottom: 0
}

.events__header .events__header__info .button__link {
    margin-top: 1.4em
}

.events__header__info {
    position: relative
}

.events__header__info .events__header__text__region p {
    line-height: 1.5
}

.events__header__info .events__header__text__region p:last-child {
    margin-bottom: 0
}

.events__filter__container {
    margin-inline: 5%
}

@media (min-width:1287.6px) {
    .events__filter__container {
        padding-inline: 0;
        margin-left: calc(50% - 580px);
        margin-right: calc(50% - 580px)
    }
}

.events__filter {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-block: 1.5em;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-block: 2em;
    margin-inline: -17px
}

.events__filter:before {
    position: absolute;
    content: "";
    top: auto;
    right: 17px;
    bottom: 0;
    left: 17px;
    height: 2px;
    background-color: var(--col-pri)
}

button.filter__btn {
    position: relative;
    padding: 17px 17px 8px;
    color: var(--col-shade--darker);
    font-size: clamp(1.125em, 5vw, 1.25em);
    font-weight: 500;
    text-align: left;
    line-height: 1.5
}

button.filter__btn:before {
    position: absolute;
    content: "";
    top: auto;
    right: 17px;
    bottom: 0;
    left: 17px;
    height: 2px;
    background-color: var(--col-shade--darker);
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    opacity: 0;
    -webkit-transition: opacity 300ms ease, -webkit-transform 300ms ease;
    transition: opacity 300ms ease, -webkit-transform 300ms ease;
    -o-transition: transform 300ms ease, opacity 300ms ease;
    transition: transform 300ms ease, opacity 300ms ease;
    transition: transform 300ms ease, opacity 300ms ease, -webkit-transform 300ms ease
}

button.filter__btn:focus {
    outline: 1px dotted rgba(0, 0, 0, 0.5)
}

button.filter__btn:hover:before {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    opacity: 1
}

button.filter__btn.filter__btn--active {
    color: #002020
}

button.filter__btn.filter__btn--active:before {
    background-color: var(--col-black);
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
    opacity: 1
}

.events__controls__container {
    position: relative;
    margin-top: 4em;
    margin-inline: 5%
}

@media (min-width:1287.6px) {
    .events__controls__container {
        padding-inline: 0;
        margin-left: calc(50% - 580px);
        margin-right: calc(50% - 580px)
    }
}

.events__container {
    overflow: hidden
}

.events__list .swiper-wrapper {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-height: 400px
}

.events__list .event__date__group {
    height: -webkit-fit-content !important;
    height: -moz-fit-content !important;
    height: fit-content !important
}

.event__date__group {
    overflow: hidden
}

.event__date__card {
    position: relative;
    width: 100%;
    max-width: 180px;
    -webkit-transform: translateY(-105%);
    -ms-transform: translateY(-105%);
    transform: translateY(-105%);
    -webkit-transition: -webkit-transform 800ms ease 1s;
    transition: -webkit-transform 800ms ease 1s;
    -o-transition: transform 800ms ease 1s;
    transition: transform 800ms ease 1s;
    transition: transform 800ms ease 1s, -webkit-transform 800ms ease 1s
}

.inview .event__date__card {
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%)
}

.event__date__card:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: auto;
    content: url("/_site/images/design/bookmark.svg")
}

.event__date__header {
    position: relative;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: auto;
    aspect-ratio: 180 / 250;
    container-type: inline-size;
    padding-bottom: 1.5em
}

.event__date__header span {
    opacity: 0;
    -webkit-transform: translateY(5px);
    -ms-transform: translateY(5px);
    transform: translateY(5px);
    -webkit-transition: opacity 800ms ease, -webkit-transform 800ms ease;
    transition: opacity 800ms ease, -webkit-transform 800ms ease;
    -o-transition: transform 800ms ease, opacity 800ms ease;
    transition: transform 800ms ease, opacity 800ms ease;
    transition: transform 800ms ease, opacity 800ms ease, -webkit-transform 800ms ease;
    -webkit-transition-delay: 00ms;
    -o-transition-delay: 00ms;
    transition-delay: 00ms
}

.inview .event__date__header span {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.event__date__header span {
    display: block;
    color: var(--col-sec)
}

.event__date__header span.day__number {
    color: #fff;
    font-size: clamp(3.75em, 46cqi, 5em);
    font-family: var(--font-feature);
    line-height: 1
}

.event__item {
    background-color: rgba(var(--col-off-white--opac), 0.7);
    padding: 1.4em;
    margin-block: 1em
}

.event__title {
    color: #000;
    font-size: 1.125em;
    margin: 0
}

.event__time {
    color: var(--col-shade--normal);
    margin: 1em 0 0
}

.event__calendar {
    display: none
}

@media (min-width:700px) {
    .events__header .events__header__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        gap: 2em
    }

    .events__header .events__header__info .events__header__text__region {
        max-width: clamp(400px, 55vw, 790px)
    }

    .events__filter {
        margin-block: 1em
    }

    .events__controls__container {
        margin-top: 2em
    }

    .event__date__group {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 2fr;
        grid-template-columns: 1fr 2fr;
        gap: 1em;
        height: -webkit-fit-content !important;
        height: -moz-fit-content !important;
        height: fit-content !important
    }

    .event__date__card {
        max-width: unset
    }

    .event__item:first-child {
        margin-top: 0
    }
}

@media (min-width:950px) {
    .events__list .grouped-slide {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        gap: 40px;
        height: -webkit-fit-content !important;
        height: -moz-fit-content !important;
        height: fit-content !important;
        min-height: 400px
    }

    .events__list .grouped-slide .event__date__group {
        width: calc(50% - 20px)
    }
}

.sports {
    position: relative;
    padding-block: 5em;
    overflow: hidden
}

.sports__header {
    position: relative;
    z-index: 3;
    padding-inline: 5%
}

@media (min-width:1287.6px) {
    .sports__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.sports__header .section__titles #sports__title {
    color: #fff
}

@media (min-width:950px) {
    .sports__header {
        margin-left: var(--accent-gap)
    }
}

.sports__links__container {
    position: relative;
    padding: 2em 5%
}

@media (min-width:1332px) {
    .sports__links__container {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 600px);
        padding-right: calc(50% - 600px)
    }
}

.sports__links__container:before {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 50%;
    left: 0;
    background-color: var(--col-shade--dark);
    height: 100%
}

.sports__links__container:after {
    z-index: 0;
    position: absolute;
    content: "";
    top: 50%;
    right: 0;
    bottom: auto;
    left: 0;
    background-color: var(--col-db-shade--darker);
    height: 100%
}

.sports__image__links__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3em;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch
}

.sports__image__links__item {
    position: relative;
    height: 400px;
    overflow: hidden
}

.sports__image__links__item:hover .sports__image__links__item__image img {
    opacity: 0.5
}

.sports__image__links__item:hover .sports__image__links__item__details {
    opacity: 1;
    max-height: 10lh;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.sports__image__links__item__image {
    background-color: #000;
    position: absolute;
    inset: 0
}

.sports__image__links__item__image img[loading=lazy] {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
    opacity: 0.5
}

.sports__image__links__item__image:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 50%;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.sports__image__links__item__content {
    position: relative;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    color: #fff;
    padding: 2em
}

.sports__image__links__item__title {
    font-size: clamp(1.75em, 8cqw, 2.1875em);
    margin-block: 0
}

.sports__image__links__item__info {
    font-weight: 300;
    line-height: 1.5;
    margin: 1em 0 0;
    line-clamp: 8;
    -webkit-line-clamp: 8;
    -webkit-box-orient: vertical;
    overflow: hidden
}

.sports__image__links__item__button__link.button__link {
    margin-top: 1.2em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
}

@media (min-width:769px) {
    .sports {
        padding-top: 6em;
        padding-bottom: 15em;
        overflow: hidden
    }

    .sports__links__container .sports__bg__gradient {
        position: absolute;
        content: "";
        top: 90%;
        right: 0;
        bottom: 0;
        left: 0;
        height: 65%;
        opacity: 0.5;
        background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
        background: -webkit-linear-gradient(bottom, #000, transparent);
        background: -o-linear-gradient(bottom, #000, transparent);
        background: linear-gradient(to top, #000, transparent);
        z-index: 2
    }

    .sports__links__container:before {
        position: absolute;
        content: "";
        top: 50%;
        right: 50%;
        bottom: auto;
        left: auto;
        height: 500%;
        width: 55vw;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 1
    }

    .sports__links__container:after {
        position: absolute;
        content: "";
        top: 50%;
        right: auto;
        bottom: auto;
        left: 50%;
        height: 500%;
        width: 55vw;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 1
    }

    .sports__links__container nav {
        z-index: 3
    }

    .sports__image__links__list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 0
    }

    .sports__image__links__item {
        width: 0;
        aspect-ratio: 600 / 390;
        -webkit-transition: width 1s ease 1s;
        -o-transition: width 1s ease 1s;
        transition: width 1s ease 1s
    }

    .sports__image__links__item .sports__image__links__item__content {
        -webkit-transform: translateY(10px);
        -ms-transform: translateY(10px);
        transform: translateY(10px);
        opacity: 0;
        -webkit-transition-timing-function: var(--cubic-headings);
        -o-transition-timing-function: var(--cubic-headings);
        transition-timing-function: var(--cubic-headings);
        -webkit-transition-duration: 500ms;
        -o-transition-duration: 500ms;
        transition-duration: 500ms;
        -webkit-transition-delay: 2s;
        -o-transition-delay: 2s;
        transition-delay: 2s
    }

    .inview .sports__image__links__item .sports__image__links__item__content,
    .sports__image__links__item .sports__image__links__item__content.inview {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }

    .inview .sports__image__links__item {
        width: 50%
    }

    .sports__image__links__item__image img[loading=lazy] {
        opacity: 1
    }

    .sports__image__links__item__details {
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
        opacity: 0;
        max-height: 0;
        -webkit-transition: opacity 400ms ease, max-height 800ms ease, -webkit-transform 400ms ease;
        transition: opacity 400ms ease, max-height 800ms ease, -webkit-transform 400ms ease;
        -o-transition: opacity 400ms ease, max-height 800ms ease, transform 400ms ease;
        transition: opacity 400ms ease, max-height 800ms ease, transform 400ms ease;
        transition: opacity 400ms ease, max-height 800ms ease, transform 400ms ease, -webkit-transform 400ms ease
    }
}

section.uniforms {
    position: relative;
    z-index: 5;
    background-color: var(--col-shade--darkest)
}

.uniform__section__container .inview__trigger {
    position: absolute
}

.uniform__section__container {
    position: relative;
    background-color: var(--col-shade--dark);
    -webkit-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2)
}

.uniform__section__container:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right bottom, from(rgba(var(--col-pri--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(top left, rgba(var(--col-pri--opac), 1), transparent);
    background: -o-linear-gradient(top left, rgba(var(--col-pri--opac), 1), transparent);
    background: linear-gradient(to bottom right, rgba(var(--col-pri--opac), 1), transparent)
}

.uniform__media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 0.5em;
    margin-inline: 2%
}

@media (min-width:415px) {
    .uniform__media {
        margin-inline: 0
    }
}

.uniform__image__container {
    position: relative;
    width: 50%;
    max-width: 275px;
    padding-block: 2.5em
}

.uniform__bookmark__svg__container {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: auto;
    left: 0;
    margin: auto;
    aspect-ratio: 150 / 500;
    width: 54.54%;
    height: auto;
    overflow: hidden
}

.uniform__bookmark__svg__container .uniform__bookmark__svg {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    -webkit-filter: drop-shadow(var(--shadow-sm));
    filter: drop-shadow(var(--shadow-sm));
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    -webkit-transition: -webkit-transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms;
    transition: -webkit-transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms;
    -o-transition: transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms;
    transition: transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms;
    transition: transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms, -webkit-transform 2s cubic-bezier(0.34, 1.16, 0.24, 1) 1000ms
}

.inview .uniform__bookmark__svg__container .uniform__bookmark__svg {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.uniform__image__container__sp .uniform__bookmark__svg__container .uniform__bookmark__svg {
    color: var(--col-pri)
}

.uniform__image__container__db .uniform__bookmark__svg__container .uniform__bookmark__svg {
    color: var(--col-db-shade--darker)
}

.uniform__image__block {
    position: relative
}

.uniform__image {
    position: relative;
    aspect-ratio: 275 / 350;
    -webkit-box-shadow: var(--shadow-sm);
    box-shadow: var(--shadow-sm);
    width: 100%;
    height: auto;
    line-height: 0;
    opacity: 0;
    scale: 0.5;
    -webkit-transition: opacity 1s ease, scale 1s ease;
    -o-transition: opacity 1s ease, scale 1s ease;
    transition: opacity 1s ease, scale 1s ease;
    -webkit-transition-delay: 1.5s;
    -o-transition-delay: 1.5s;
    transition-delay: 1.5s
}

.inview .uniform__image {
    opacity: 1;
    scale: 1
}

.uniform__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.uniform__image:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 57%;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.uniform__image:before {
    z-index: 5;
    pointer-events: all
}

.uniform__image__title {
    position: absolute;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    bottom: 0;
    left: 0;
    right: 0;
    -ms-flex-line-pack: end;
    align-content: end;
    padding: 0.5em;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    opacity: 0;
    -webkit-transition-timing-function: var(--cubic-headings);
    -o-transition-timing-function: var(--cubic-headings);
    transition-timing-function: var(--cubic-headings);
    -webkit-transition-duration: 500ms;
    -o-transition-duration: 500ms;
    transition-duration: 500ms;
    -webkit-transition-delay: 2.5s;
    -o-transition-delay: 2.5s;
    transition-delay: 2.5s
}

.inview .uniform__image__title,
.uniform__image__title.inview {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.uniform__image__title h4 {
    font-size: clamp(1.125em, 5cqw, 1.5625em);
    font-weight: 400;
    color: #fff
}

@media (min-width:415px) {
    .uniform__image__title {
        padding: 1.5em
    }
}

.uniforms__content.next__step__content {
    width: 100%
}

.uniforms__content.next__step__content .section__titles #next__step__content__title__1 {
    color: #fff
}

@media (min-width:769px) {
    section.uniforms {
        padding-inline: 5%
    }
}

@media (min-width:769px) and (min-width:1465.2px) {
    section.uniforms {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 660px);
        padding-right: calc(50% - 660px)
    }
}

@media (min-width:769px) {
    .uniform__section__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%)
    }

    .uniform__media {
        padding-left: 5%;
        padding-right: clamp(1.5em, 3%, 6em)
    }

    .uniforms__content.next__step__content {
        width: 50%
    }
}

section.parent__handbooks {
    position: relative;
    z-index: 6;
    padding-block: 4em;
    background-color: var(--col-shade--darkest)
}

@media (min-width:769px) {
    section.parent__handbooks {
        padding-top: 0;
        margin-top: -100px
    }
}

.handbooks__header {
    position: relative;
    padding-inline: 5%;
    color: #fff
}

@media (min-width:1287.6px) {
    .handbooks__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.handbooks__header .section__titles #handbooks__title {
    color: #fff
}

.handbooks__header__info {
    position: relative
}

.handbooks__header__info .handbooks__header__text__region p {
    line-height: 1.5
}

.handbooks__header__info .handbooks__header__text__region p:last-child {
    margin-bottom: 0
}

.handbooks__header__info .handbook__button__region {
    margin-top: 1.5em
}

.parent__handbook__list {
    padding: 2em 5%;
    background-color: var(--col-shade--darkest);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 24px
}

@media (min-width:1332px) {
    .parent__handbook__list {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 600px);
        padding-right: calc(50% - 600px)
    }
}

.parent__handbook__item {
    width: calc(50% - 12px)
}

@media (min-width:550px) {
    .parent__handbook__item {
        width: calc(33% - 16px)
    }
}

@media (min-width:800px) {
    .parent__handbook__item {
        width: calc(25% - 18px)
    }
}

@media (min-width:1330px) {
    .parent__handbook__item {
        width: 100%;
        max-width: 180px
    }
}

.parent__handbook__item__link:hover .parent__handbook__item__image {
    position: absolute;
    content: "";
    top: -5px;
    right: -5px;
    bottom: -5px;
    left: -5px
}

.parent__handbook__item__link:hover .parent__handbook__item__overlay {
    opacity: 1;
    position: absolute;
    content: "";
    top: 5px;
    right: 5px;
    bottom: 5px;
    left: 5px
}

.parent__handbook__item__image__container {
    position: relative;
    aspect-ratio: 180 / 250
}

.parent__handbook__item__image {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-box-shadow: var(--shadow-sm);
    box-shadow: var(--shadow-sm);
    line-height: 0;
    -webkit-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease
}

.parent__handbook__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.parent__handbook__item__image:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 50%;
    opacity: 0.7;
    background: -webkit-gradient(linear, left bottom, left top, from(#000), to(transparent));
    background: -webkit-linear-gradient(bottom, #000, transparent);
    background: -o-linear-gradient(bottom, #000, transparent);
    background: linear-gradient(to top, #000, transparent)
}

.parent__handbook__item__overlay {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 2px solid #fff;
    opacity: 0;
    -webkit-transition: all 400ms ease;
    -o-transition: all 400ms ease;
    transition: all 400ms ease
}

h4.parent__handbook__item__title {
    font-size: clamp(1.125em, 3cqw, 1.25em);
    font-weight: 400;
    text-wrap-style: balance;
    margin-top: 1em;
    color: #fff;
    text-shadow: 0px 0px 30px rgba(0, 0, 0, 0.5)
}

@media (min-width:950px) {
    .handbooks__header .handbooks__header__info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        gap: 2em
    }

    .handbooks__header .handbooks__header__info .handbooks__header__text__region {
        max-width: clamp(400px, 55vw, 790px)
    }
}

.donations-spotlight {
    position: relative;
    background-color: var(--col-shade--normal)
}

.donations-spotlight:before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    opacity: 0.5;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(var(--col-black--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(bottom, rgba(var(--col-black--opac), 1), transparent);
    background: -o-linear-gradient(bottom, rgba(var(--col-black--opac), 1), transparent);
    background: linear-gradient(to top, rgba(var(--col-black--opac), 1), transparent);
    pointer-events: none
}

.donations {
    position: relative;
    padding-block: 4em
}

.donations__header {
    position: relative;
    padding-inline: 5%;
    margin-left: var(--accent-gap)
}

@media (min-width:1287.6px) {
    .donations__header {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 580px);
        padding-right: calc(50% - 580px)
    }
}

.donations__header .section__titles {
    margin-left: var(--accent-gap)
}

.donation__card__list {
    margin-top: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-inline: 5%
}

@media (min-width:1332px) {
    .donation__card__list {
        right: 0;
        left: 0;
        margin-inline: 0;
        padding-left: calc(50% - 600px);
        padding-right: calc(50% - 600px)
    }
}

@media (min-width:1025px) {
    .donation__card__list {
        gap: 40px
    }
}

.donation__card__item {
    max-width: 90vw;
    border: 2px solid transparent;
    padding: clamp(20px, 3vw, 40px);
    -webkit-transition: border-color 1000ms ease 700ms;
    -o-transition: border-color 1000ms ease 700ms;
    transition: border-color 1000ms ease 700ms
}

.inview .donation__card__item {
    border-color: var(--col-sec)
}

@media (min-width:769px) {
    .donation__card__item {
        width: calc(50% - 10px);
        max-width: 580px
    }
}

@media (min-width:1025px) {
    .donation__card__item {
        width: calc(50% - 20px)
    }
}

.donation__card__item__image {
    height: 300px;
    -webkit-box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 50px rgba(0, 0, 0, 0.5);
    line-height: 0
}

.donation__card__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media (min-width:769px) {
    .donation__card__item__image {
        aspect-ratio: 500 / 340;
        height: auto
    }
}

.donation__card__item__content {
    margin-top: 2em;
    color: #fff
}

.donation__card__item__title {
    margin: 0;
    font-size: clamp(1.875em, 7cqw, 2.5em);
    font-weight: 500;
    text-wrap-style: balance
}

.donation__card__item__text {
    font-weight: 300;
    line-height: 1.5;
    max-height: 7lh;
    overflow: auto;
    scrollbar-width: 8px;
    scrollbar-color: var(--col-shade--darkest);
    -ms-overflow-style: -ms-autohiding-scrollbar;
    padding-right: 1.5em
}

.donation__card__item__text::-webkit-scrollbar {
    width: 8px
}

.donation__card__item__text::-webkit-scrollbar-track {
    background-color: var(--col-shade--darkest) !important;
    border-radius: 0
}

.donation__card__item__text::-webkit-scrollbar-thumb {
    background-color: var(--col-sec);
    border-radius: 0
}

.donation__card__item__button__link {
    margin-top: 1.8em
}

@media (min-width:950px) {
    .donations {
        padding-top: 20em
    }
}

.partnerships__spotlight {
    position: relative;
    padding-block: 4em;
    padding-inline: 5%;
    background-color: var(--col-sec)
}

@media (min-width:1265.4px) {
    .partnerships__spotlight {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 570px)
    }
}

.partnerships__image__container .partnerships__bg {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 90vw
}

@media (min-width:950px) {
    .partnerships__image__container .partnerships__bg {
        width: 50%;
        left: auto;
        height: 100%;
        top: 0
    }
}

.partnerships__image__container:after {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, right bottom, from(rgba(var(--col-off-white--opac), 1)), to(transparent));
    background: -webkit-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: -o-linear-gradient(top left, rgba(var(--col-off-white--opac), 1), transparent);
    background: linear-gradient(to bottom right, rgba(var(--col-off-white--opac), 1), transparent)
}

.partnerships__image__container .partnerships__bg__image {
    position: relative;
    background-color: var(--col-sec)
}

.partnerships__image__container .partnerships__bg__image img {
    mix-blend-mode: luminosity;
    opacity: 0.5
}

.partnerships__image__container .partnerships__image__overlay {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(var(--col-sec--opac), 1)), color-stop(30%, rgba(var(--col-sec--opac), 0)), to(rgba(var(--col-sec--opac), 0)));
    background: -webkit-linear-gradient(top, rgba(var(--col-sec--opac), 1) 0%, rgba(var(--col-sec--opac), 0) 30%, rgba(var(--col-sec--opac), 0) 100%);
    background: -o-linear-gradient(top, rgba(var(--col-sec--opac), 1) 0%, rgba(var(--col-sec--opac), 0) 30%, rgba(var(--col-sec--opac), 0) 100%);
    background: linear-gradient(to bottom, rgba(var(--col-sec--opac), 1) 0%, rgba(var(--col-sec--opac), 0) 30%, rgba(var(--col-sec--opac), 0) 100%)
}

@media (min-width:950px) {
    .partnerships__image__container .partnerships__image__overlay {
        background: transparent
    }
}

.partnerships__image__container .partnerships__image__overlay:before {
    position: absolute;
    content: "";
    top: 0;
    right: auto;
    bottom: 0;
    left: 0;
    width: 34%;
    background: -webkit-gradient(linear, left top, right top, from(rgba(var(--col-sec--opac), 1)), to(rgba(var(--col-sec--opac), 0)));
    background: -webkit-linear-gradient(left, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: -o-linear-gradient(left, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: linear-gradient(to right, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0))
}

.partnerships__image__container .partnerships__image__overlay:after {
    position: absolute;
    content: "";
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    height: 45%;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(var(--col-sec--opac), 1)), to(rgba(var(--col-sec--opac), 0)));
    background: -webkit-linear-gradient(bottom, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: -o-linear-gradient(bottom, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0));
    background: linear-gradient(to top, rgba(var(--col-sec--opac), 1), rgba(var(--col-sec--opac), 0))
}

.partnerships__spotlight__header .section__titles {
    margin-left: var(--accent-gap)
}

.partnerships__spotlight__container {
    margin-top: 3em
}

.partnership__feature__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

.partnership__feature__item__details {
    margin-top: 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.partnership__feature__item__title {
    font-weight: 600
}

.partnership__feature__item__text {
    line-height: 1.5;
    font-weight: 300;
    margin-bottom: 0
}

.partnership__feature__item__logo__image {
    max-width: 280px
}

.partnership__feature__item__logo__image img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain
}

.partnerships__button__link__region {
    z-index: 1
}

.partnerships__button__link__region .partnerships__button__link a:before {
    background-color: rgba(var(--col-off-white--opac), 0.2)
}

@media (min-width:950px) {
    .partnerships__spotlight {
        padding-top: 16em;
        padding-bottom: 8em
    }

    .partnerships__spotlight__header .section__titles {
        margin-left: 0;
        max-width: 500px
    }

    .partnership__feature__item {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: 1em
    }

    .partnership__feature__item__details {
        width: 50%;
        margin-top: 0
    }

    .partnership__feature__item__text {
        max-width: 480px
    }

    .partnership__feature__item__decor {
        max-width: 580px;
        width: 50%
    }

    .partnership__feature__item__logo__image {
        max-width: 580px;
        margin: 80px auto 0
    }

    .partnerships__button__link__region {
        position: absolute;
        bottom: 8em;
        right: 0;
        width: 50%
    }

    .mason--admin .partnerships__button__link__region {
        position: absolute !important
    }

    .partnerships__button__link__region .button__link {
        margin: auto;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content
    }
}

.community__partnerships {
    padding-block: 4em
}

.community__partnerships__header {
    max-width: 481px;
    margin: 5% 2em
}

@media (min-width:950px) {
    .community__partnerships__header {
        margin-inline: 0
    }
}

.community__partnerships__list__container {
    position: relative
}

.community__partnerships__navigation {
    margin-inline: 5%
}

.community__partnerships__list {
    overflow: visible
}

.community__partnerships__item__media {
    position: relative
}

.community__partnerships__item__image {
    aspect-ratio: 640 / 470;
    line-height: 0
}

.community__partnerships__item__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.community__partnerships__item__blockquote {
    background-color: rgba(var(--col-sec--opac), 0.8);
    padding: 1em 5%;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    container-type: inline-size
}

.community__partnerships__item__blockquote p {
    font-size: clamp(1.125em, 5.5cqi, 1.875em);
    line-height: 1.4;
    letter-spacing: 0.02em;
    font-weight: 500;
    font-family: var(--font-feature);
    color: var(--col-shade--darkest);
    font-style: italic;
    margin-block: 0
}

.community__partnerships__item__content {
    padding-inline: 5%;
    padding-top: 2.5em
}

.community__partnerships__item__title {
    font-size: clamp(1.125em, 5.5cqi, 1.875em);
    font-weight: 600
}

.community__partnerships__item__text__region p.intro {
    margin-block: 0.6em;
    font-weight: 500
}

.community__partnerships__item__text__region p {
    line-height: 1.5
}

.community__partnerships__item__button__link {
    margin-top: 1.5em
}

@media (min-width:769px) {
    .community__partnerships {
        padding-inline: 5%
    }
}

@media (min-width:769px) and (min-width:1465.2px) {
    .community__partnerships {
        margin-left: 0;
        left: 0;
        padding-left: calc(50% - 660px)
    }
}

@media (min-width:769px) and (min-width:1287.6px) {
    .community__partnerships {
        right: 0;
        margin-right: 0;
        padding-right: calc(50% - 580px)
    }
}

@media (min-width:769px) {
    .community__partnerships__item__content {
        padding-inline: 0
    }

    .community__partnerships__item__media {
        max-width: 640px
    }

    .community__partnerships__item__blockquote {
        margin-top: 2em;
        padding: 2em 2.5em
    }
}

@media (min-width:950px) {
    .community__partnerships {
        padding-block: 5em
    }

    .community__partnerships__header {
        margin-left: auto
    }

    .community__partnerships__item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        gap: 3em
    }

    .community__partnerships__item__image {
        aspect-ratio: 640 / 570;
        margin-top: -190px
    }

    .community__partnerships__item__content {
        padding-top: 0;
        max-width: 481px
    }

    .community__partnerships__item__blockquote {
        position: relative;
        bottom: unset;
        left: unset;
        right: unset;
        background-color: rgba(var(--col-sec--opac), 1)
    }

    .community__partnerships__navigation {
        margin-top: 2em;
        margin-inline: 0
    }
}