.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 .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease;
    transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease;
    -o-transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s;
    transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s;
    transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s, -webkit-transform .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: .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; }

.welcome__image__wrap > div > img, .map__container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.welcome__image__wrap > div > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center; }

@-webkit-keyframes marquee {
  0% {
    -webkit-transform: translateX(100vw);
    transform: translateX(100vw); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

@keyframes marquee {
  0% {
    -webkit-transform: translateX(100vw);
    transform: translateX(100vw); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

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

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -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 .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease;
    transition: opacity .2s ease, visibility 0s ease .2s, -webkit-transform .2s ease;
    -o-transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s;
    transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s;
    transition: transform .2s ease, opacity .2s ease, visibility 0s ease .2s, -webkit-transform .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: .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; }

.welcome__image__wrap > div > img, .map__container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.welcome__image__wrap > div > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center; }

@keyframes marquee {
  0% {
    -webkit-transform: translateX(100vw);
    transform: translateX(100vw); }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%); } }

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

.home__header > h2 {
  font-size: 32px;
  font-weight: 400;
  letter-spacing: 0.04em;
  margin: 0;
  line-height: calc(51/ 40); }
  @media all and (min-width: 1024px) {
    .home__header > h2 {
      font-size: 40px; } }

.home__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px; }
  .home__nav .home__nav__button {
    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;
    width: 55px;
    height: 55px;
    background: var(--col-pritxt);
    color: var(--col-pri);
    border: 3px solid var(--col-pri);
    cursor: pointer;
    visibility: visible;
    -webkit-transition: opacity .3s ease, background .3s ease, color .3s ease, border .3s ease;
    -o-transition: opacity .3s ease, background .3s ease, color .3s ease, border .3s ease;
    transition: opacity .3s ease, background .3s ease, color .3s ease, border .3s ease; }
    .home__nav .home__nav__button > svg {
      font-size: 30px; }
    .home__nav .home__nav__button:hover, .home__nav .home__nav__button:focus {
      color: var(--col-pritxt);
      background: var(--col-pri); }
    .home__nav .home__nav__button.swiper-button-disabled {
      opacity: 0.5;
      pointer-events: none; }
  .home__nav--white .home__nav__button {
    background: var(--col-pri);
    color: var(--col-pritxt);
    border: 3px solid var(--col-pritxt); }
    .home__nav--white .home__nav__button:hover, .home__nav--white .home__nav__button:focus {
      color: var(--col-pri);
      background: var(--col-pritxt); }

.home__pagination {
  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;
  gap: 20px; }
  .home__pagination > span {
    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;
    position: relative;
    width: 25px;
    height: 25px;
    color: var(--col-pri);
    cursor: pointer;
    -webkit-transition: opacity .3s ease;
    -o-transition: opacity .3s ease;
    transition: opacity .3s ease; }
    .home__pagination > span:hover, .home__pagination > span:focus {
      opacity: 0.75; }
    .home__pagination > span::after {
      position: absolute;
      content: '';
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      border: 1px solid var(--col-pri);
      opacity: 0;
      -webkit-transform: scale(0);
      -ms-transform: scale(0);
      transform: scale(0);
      -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
      transition: opacity .3s ease, -webkit-transform .3s ease;
      -o-transition: opacity .3s ease, transform .3s ease;
      transition: opacity .3s ease, transform .3s ease;
      transition: opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }
    .home__pagination > span.swiper-pagination-bullet-active::after {
      opacity: 1;
      -webkit-transform: scale(1);
      -ms-transform: scale(1);
      transform: scale(1); }
  .home__pagination--white > span {
    color: var(--col-pritxt); }
    .home__pagination--white > span::after {
      border: 1px solid #fff; }

.content {
  width: 100%;
  float: none; }

.content__region {
  max-width: none; }

.content__attachments {
  display: none; }

.hero {
  min-height: 70vh;
  max-height: 100vh;
  height: 48vw; }

.entry {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.entry__list {
  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;
  width: 100%; }

.entry__item {
  width: 100%; }
  .entry__item > a {
    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;
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden; }
    .entry__item > a:hover .entry__item__image::after, .entry__item > a:focus .entry__item__image::after {
      opacity: 0.75; }
    .entry__item > a:hover .entry__item__text, .entry__item > a:focus .entry__item__text {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
    .entry__item > a:hover .entry__item__more, .entry__item > a:focus .entry__item__more {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      opacity: 1; }

.entry__item__image::before {
  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(0deg, #000, transparent);
  opacity: 0.4;
  z-index: 4; }

.entry__item__image::after {
  position: absolute;
  content: '';
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: var(--col-pri);
  opacity: 0;
  -webkit-transition: opacity .3s ease;
  -o-transition: opacity .3s ease;
  transition: opacity .3s ease;
  z-index: 5; }

.entry__item__text {
  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;
  gap: 22px;
  position: relative;
  color: var(--col-pritxt);
  text-align: center;
  -webkit-filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.15));
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.15));
  -webkit-transform: translateY(24px);
  -ms-transform: translateY(24px);
  transform: translateY(24px);
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  -o-transition: transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
  z-index: 5; }
  .entry__item__text > h2 {
    font-size: clamp(40px, 4.4vw, 64px);
    font-weight: 400;
    letter-spacing: 0.04em;
    margin: 0;
    line-height: calc(51 / 41); }
    .entry__item__text > h2 > span {
      font-size: clamp(16px, 1.7vw, 20px); }

.entry__item__more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  opacity: 0;
  -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
  transition: opacity .3s ease, -webkit-transform .3s ease;
  -o-transition: transform .3s ease, opacity .3s ease;
  transition: transform .3s ease, opacity .3s ease;
  transition: transform .3s ease, opacity .3s ease, -webkit-transform .3s ease; }
  .entry__item__more > span {
    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;
    width: 24px;
    height: 24px;
    background: var(--col-pritxt); }
    .entry__item__more > span > svg {
      font-size: 15px;
      color: var(--col-pri); }

@media all and (min-width: 1024px) {
  .entry__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; }
  .entry__item {
    width: 50%; }
    .entry__item > a {
      position: relative;
      height: auto;
      max-height: 582px; }
      .entry__item > a:before {
        content: '';
        display: block;
        visibility: hidden;
        padding-bottom: 78.64865%; } }

.welcome {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 60px 5% 150px;
  position: relative; }

.welcome__bg {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 38%;
  background: var(--col-pri); }
  @media all and (max-width: 1023px) {
    .welcome__bg {
      display: none; } }

.welcome__wrap {
  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;
  text-align: center;
  max-width: 1260px;
  gap: clamp(20px, 5vw, 80px); }
  @media all and (min-width: 1024px) {
    .welcome__wrap {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      text-align: left; } }

.welcome__details {
  position: relative;
  max-width: 880px; }

.welcome__watermark {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 0.75em;
  aspect-ratio: 494 / 305;
  width: 30.875em; }
  @media all and (min-width: 425px) {
    .welcome__watermark {
      font-size: 0.8125em; } }
  @media all and (min-width: 768px) {
    .welcome__watermark {
      font-size: 0.875em; } }
  @media all and (min-width: 1024px) {
    .welcome__watermark {
      font-size: 0.9375em; } }
  @media all and (min-width: 1440px) {
    .welcome__watermark {
      font-size: 1em; } }
  .mason--northside .welcome__watermark {
    aspect-ratio: 300 / 388;
    width: 18.75em; }
  .mason--queenswell .welcome__watermark {
    aspect-ratio: 290 / 331;
    width: 18.125em; }

.welcome__header {
  color: var(--col-pri); }

.welcome__content__region {
  margin: 38px 0; }
  .welcome__content__region > p {
    line-height: calc(28 / 18);
    letter-spacing: 0.04em; }
    @media all and (min-width: 1024px) {
      .welcome__content__region > p {
        font-size: 18px; } }

.welcome__image__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  max-width: 568px;
  aspect-ratio: 568 / 396; }
  .mason--landing .welcome__image__wrap {
    aspect-ratio: 551 / 372; }
  @media all and (min-width: 1024px) {
    .welcome__image__wrap {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      width: clamp(300px, calc(18.75rem + ((1vw - 4.25px) * 26.4039)), 551px); } }
  .welcome__image__wrap > div {
    position: absolute;
    border: 4px solid #fff;
    overflow: hidden; }
    @media all and (min-width: 1024px) {
      .welcome__image__wrap > div {
        border: 9px solid #fff; } }
    .welcome__image__wrap > div.admin_editable {
      position: absolute !important; }
    .welcome__image__wrap > div:nth-child(1) {
      top: 0;
      right: 0;
      width: 55%;
      aspect-ratio: 314 / 322;
      z-index: 5; }
      .mason--landing .welcome__image__wrap > div:nth-child(1) {
        width: 100%;
        height: 100%;
        aspect-ratio: unset; }
    .welcome__image__wrap > div:nth-child(2) {
      bottom: 0;
      left: 0;
      width: 57%;
      aspect-ratio: 324 / 322; }

.image-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.image-links__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  width: 100%; }
  @media all and (min-width: 800px) and (max-width: 1299px) {
    .image-links__list {
      -ms-grid-columns: 1fr;
      grid-template-columns: 1fr; }
      .image-links__list[data-count="2"] {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
      .image-links__list[data-count="3"] {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
        .image-links__list[data-count="3"] li:nth-child(3) {
          -ms-grid-column-span: 2;
          grid-column: span 2; }
      .image-links__list[data-count="4"] {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); } }
  @media all and (min-width: 1300px) {
    .image-links__list {
      -ms-grid-columns: 1fr;
      grid-template-columns: 1fr; }
      .image-links__list[data-count="2"] {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
      .image-links__list[data-count="3"] {
        -ms-grid-columns: (1fr)[3];
        grid-template-columns: repeat(3, 1fr); }
      .image-links__list[data-count="4"] {
        -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr); } }

.image-links__item {
  width: 100%; }
  .image-links__item > a {
    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;
    position: relative;
    width: 100%;
    height: 260px;
    overflow: hidden; }
    .image-links__item > a:hover .image-links__item__image::after, .image-links__item > a:focus .image-links__item__image::after {
      opacity: 0.75; }
    .image-links__item > a:hover .image-links__item__text, .image-links__item > a:focus .image-links__item__text {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
    .image-links__item > a:hover .image-links__item__more, .image-links__item > a:focus .image-links__item__more {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      opacity: 1; }

.image-links__item__image::before {
  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(0deg, #000, transparent);
  opacity: 0.4;
  z-index: 4; }

.image-links__item__image::after {
  position: absolute;
  content: '';
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: var(--col-pri);
  opacity: 0;
  -webkit-transition: opacity .3s ease;
  -o-transition: opacity .3s ease;
  transition: opacity .3s ease;
  z-index: 5; }

.image-links__item__text {
  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;
  gap: 22px;
  position: relative;
  color: var(--col-pritxt);
  text-align: center;
  -webkit-filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.15));
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.15));
  -webkit-transform: translateY(24px);
  -ms-transform: translateY(24px);
  transform: translateY(24px);
  -webkit-transition: -webkit-transform .3s ease;
  transition: -webkit-transform .3s ease;
  -o-transition: transform .3s ease;
  transition: transform .3s ease;
  transition: transform .3s ease, -webkit-transform .3s ease;
  z-index: 5; }
  .image-links__item__text > h2 {
    font-size: clamp(28px, 3vw, 35px);
    font-weight: 400;
    letter-spacing: 0.04em;
    margin: 0;
    line-height: calc(51 / 41); }

.image-links__item__more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  opacity: 0;
  -webkit-transition: opacity .3s ease, -webkit-transform .3s ease;
  transition: opacity .3s ease, -webkit-transform .3s ease;
  -o-transition: transform .3s ease, opacity .3s ease;
  transition: transform .3s ease, opacity .3s ease;
  transition: transform .3s ease, opacity .3s ease, -webkit-transform .3s ease; }
  .image-links__item__more > span {
    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;
    width: 24px;
    height: 24px;
    background: var(--col-pritxt); }
    .image-links__item__more > span > svg {
      font-size: 15px;
      color: var(--col-pri); }

@media all and (min-width: 800px) {
  .image-links__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; }
  .image-links__item > a {
    position: relative;
    height: auto;
    max-height: 410px; }
    .image-links__item > a:before {
      content: '';
      display: block;
      visibility: hidden;
      padding-bottom: 110.81081%; } }

@media (min-width: 800px) {
  .image-links__list {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .image-links__item {
    width: 25%; } }

.map {
  position: relative;
  height: 761px; }

@media (max-width: 1023px) {
  .map {
    height: 370px; } }

.contact__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.contact__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: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  position: relative;
  color: var(--col-pri);
  padding: 70px 5% 90px; }
  .contact__item > * {
    position: relative;
    z-index: 3; }
  .contact__item > h3 {
    font-size: 28px;
    font-weight: 400;
    letter-spacing: 0.04em;
    margin: 0 0 26px; }
  .contact__item > .contact__item__image {
    position: absolute;
    z-index: 2; }
    .contact__item > .contact__item__image > img {
      -webkit-filter: grayscale(1);
      filter: grayscale(1); }
      .contact__item > .contact__item__image > img[alt] {
        opacity: 0; }
    .contact__item > .contact__item__image::after {
      position: absolute;
      content: '';
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: #fff;
      opacity: 0.8; }
  .contact__item .button__link > a {
    padding: 10px 24px; }
  .contact__item a {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    -webkit-transition: -webkit-text-decoration .3s ease;
    transition: -webkit-text-decoration .3s ease;
    -o-transition: text-decoration .3s ease;
    transition: text-decoration .3s ease;
    transition: text-decoration .3s ease, -webkit-text-decoration .3s ease; }
    .contact__item a:hover, .contact__item a:focus {
      -webkit-text-decoration-color: currentColor;
      text-decoration-color: currentColor; }

.contact__item__line {
  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;
  font-size: 17px;
  letter-spacing: 0.04em;
  margin-bottom: 26px;
  word-break: break-all; }
  .contact__item__line > svg {
    font-size: 26px;
    color: var(--col-pri); }

@media all and (min-width: 1024px) {
  .contact__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; }
  .contact__item {
    width: 50%; } }

.news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding: 75px 5%;
  color: var(--col-pritxt);
  background: var(--col-pri); }

.news__watermark {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 0.75em;
  aspect-ratio: 494 / 305;
  width: 30.875em; }
  @media all and (min-width: 425px) {
    .news__watermark {
      font-size: 0.8125em; } }
  @media all and (min-width: 768px) {
    .news__watermark {
      font-size: 0.875em; } }
  @media all and (min-width: 1024px) {
    .news__watermark {
      font-size: 0.9375em; } }
  @media all and (min-width: 1440px) {
    .news__watermark {
      font-size: 1em; } }
  .mason--northside .news__watermark {
    aspect-ratio: 394 / 510;
    width: 24.625em; }
  .mason--queenswell .news__watermark {
    aspect-ratio: 378 / 432;
    width: 23.625em; }

.news__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-width: 1260px; }

.news__header {
  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;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
  gap: 15px 30px; }

.news__interactive {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px; }
  .news__interactive .button__link > a {
    padding: 12px 22px; }

.news__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  gap: 30px; }

.news__list {
  overflow: visible; }

.news__item > a {
  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;
  padding: 30px;
  border: 1px solid var(--col-pritxt);
  background: var(--col-pri);
  opacity: 0;
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: background .3s ease, color .3s ease, opacity .3s ease, -webkit-transform .3s ease;
  transition: background .3s ease, color .3s ease, opacity .3s ease, -webkit-transform .3s ease;
  -o-transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease;
  transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease;
  transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }
  .news__item > a:hover, .news__item > a:focus {
    color: var(--col-pri);
    background: var(--col-pritxt); }
    .news__item > a:hover .news__item__title > h3, .news__item > a:focus .news__item__title > h3 {
      -webkit-text-decoration-color: currentColor;
      text-decoration-color: currentColor; }
    .news__item > a:hover .news__item__more > p, .news__item > a:focus .news__item__more > p {
      -webkit-text-decoration-color: currentColor;
      text-decoration-color: currentColor; }

.news__item.swiper-slide-visible > a {
  opacity: 1 !important;
  -webkit-transform: translateX(0) !important;
  -ms-transform: translateX(0) !important;
  transform: translateX(0) !important; }

.news__item.swiper-slide-visible ~ .swiper-slide > a {
  opacity: 0;
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%); }

.news__item__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  position: relative; }
  .news__item__date--day {
    font-size: 65px;
    letter-spacing: 0.04em;
    line-height: 1.4; }
  .news__item__date--month {
    font-size: 30px;
    letter-spacing: 0.04em; }

.news__item__title {
  margin: 32px 0 25px; }
  .news__item__title > h3 {
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    letter-spacing: 0.04em;
    line-height: calc(28 / 18);
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    -webkit-transition: -webkit-text-decoration .3s ease;
    transition: -webkit-text-decoration .3s ease;
    -o-transition: text-decoration .3s ease;
    transition: text-decoration .3s ease;
    transition: text-decoration .3s ease, -webkit-text-decoration .3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden; }

.news__item__more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  position: relative; }
  .news__item__more p {
    font-size: 18px;
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    -webkit-transition: -webkit-text-decoration .3s ease;
    transition: -webkit-text-decoration .3s ease;
    -o-transition: text-decoration .3s ease;
    transition: text-decoration .3s ease;
    transition: text-decoration .3s ease, -webkit-text-decoration .3s ease;
    margin: 0; }
  .news__item__more svg {
    font-size: 20px; }

.news__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  z-index: 5; }

.events {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding: 75px 5%;
  color: var(--col-pri);
  background: var(--col-pritxt); }

.events__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 40px;
  max-width: 1260px; }

.events__header {
  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;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
  gap: 15px 30px; }

.events__interactive {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px; }
  .events__interactive .button__link > a {
    padding: 15px 22px; }

.events__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  gap: 30px; }

.events__list {
  overflow: visible;
  padding-top: 32px; }
  .events__list::after {
    content: '';
    position: absolute;
    width: 100vw;
    height: 4px;
    left: 40px;
    top: 0;
    background: var(--col-pri); }

.events__item {
  overflow: visible !important; }
  .events__item > a {
    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;
    position: relative;
    padding: 30px;
    border: 1px solid var(--col-pri);
    background: var(--col-pritxt);
    opacity: 0;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: background .3s ease, color .3s ease, opacity .3s ease, -webkit-transform .3s ease;
    transition: background .3s ease, color .3s ease, opacity .3s ease, -webkit-transform .3s ease;
    -o-transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease;
    transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease;
    transition: background .3s ease, color .3s ease, opacity .3s ease, transform .3s ease, -webkit-transform .3s ease; }
    .events__item > a::after {
      content: '';
      position: absolute;
      bottom: 100%;
      left: 39px;
      height: 32px;
      width: 4px;
      background: var(--col-pri);
      -webkit-transform: translateX(-30vw);
      -ms-transform: translateX(-30vw);
      transform: translateX(-30vw);
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      -o-transition: transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease;
      z-index: 5; }
    .events__item > a:hover, .events__item > a:focus {
      color: var(--col-pritxt);
      background: var(--col-pri); }
      .events__item > a:hover .events__item__title > h3, .events__item > a:focus .events__item__title > h3 {
        -webkit-text-decoration-color: currentColor;
        text-decoration-color: currentColor; }
  .events__item.swiper-slide-visible > a {
    opacity: 1 !important;
    -webkit-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    transform: translateX(0) !important; }
    .events__item.swiper-slide-visible > a::after {
      -webkit-transform: translateX(0) !important;
      -ms-transform: translateX(0) !important;
      transform: translateX(0) !important; }
  .events__item.swiper-slide-visible ~ .swiper-slide > a {
    opacity: 0;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%); }
    .events__item.swiper-slide-visible ~ .swiper-slide > a::after {
      -webkit-transform: translateX(30vw);
      -ms-transform: translateX(30vw);
      transform: translateX(30vw); }

.events__item__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 10px;
  position: relative; }
  .events__item__date--day {
    font-size: 65px;
    letter-spacing: 0.04em;
    line-height: 1; }
  .events__item__date--month {
    font-size: 30px;
    letter-spacing: 0.04em; }

.events__item__title {
  margin: 15px 0 25px; }
  .events__item__title > h3 {
    font-size: 18px;
    font-weight: 500;
    margin: 0;
    letter-spacing: 0.04em;
    line-height: calc(28 / 18);
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
    -webkit-transition: -webkit-text-decoration .3s ease;
    transition: -webkit-text-decoration .3s ease;
    -o-transition: text-decoration .3s ease;
    transition: text-decoration .3s ease;
    transition: text-decoration .3s ease, -webkit-text-decoration .3s ease;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden; }

.events__item__time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  position: relative; }
  .events__item__time p {
    font-size: 14px;
    letter-spacing: 0.04em;
    margin: 0; }
  .events__item__time svg {
    font-size: 26px; }

.events__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  z-index: 5; }
