@charset "UTF-8";
/* stylelint-disable */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

button {
  border: 0;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;
  /* inherit font & color from ancestor */
  color: inherit;
  font: inherit;
  text-align: inherit;
  /* Normalize `line-height`. Cannot be changed from `normal` in Firefox 4+. */
  line-height: normal;
  line-height: inherit;
}

:root {
  --container-width: calc(100% - 15px * 2);
  --header-height: 60px;
  --shadow: 0px 0px var(--font-size-h3) 0px rgba(0, 0, 0, 0.1);
  --neutral-10: #ffffff;
  --neutral-9: #f2f2f2;
  --neutral-8: #e6e6e6;
  --neutral-7: #d9d9d9;
  --neutral-6: #cccccc;
  --neutral-5: #b2b2b2;
  --neutral-4: #999999;
  --neutral-3: #666666;
  --neutral-2: #4d4d4d;
  --neutral-1: #333333;
  --neutral-0: #000000;
  --black: var(--neutral-0);
  --white: var(--neutral-10);
  --orange: #fc360d;
  --dark-grey: #282828;
  --grey: #808080;
  --stone-grey: #ebebdc;
  --pale-grey: #eeeae8;
  --text-dark: var(--black);
  --text-light: var(--white);
  --text-receding: var(--neutral-3);
  --font-family-sansserif: "PP Neue Montreal", sans-serif;
  --font-family-mono: "Aeonik Mono", monospace;
  --font-size-h1: 64px;
  --font-size-h2: 48px;
  --font-size-h3: 36px;
  --font-size-h4: 24px;
  --font-size-h5: 16px;
  --font-size-body: 12px;
  --font-size-caption: 10px;
  --corner-radius-l: 24px;
  --corner-radius-r: 16px;
  --sizing-m: 20px;
  --sizing-l: 80px;
  --sizing-r: 20px;
}
@media (min-width: 768px) {
  :root {
    --header-height: clamp(60px, calc((70 / 1300) * var(--container-width)), 70px);
    --container-width: calc(720px - 15px * 2);
    --font-size-h1: clamp(64px, calc((108 / 1300) * var(--container-width)), 108px);
    --font-size-h2: clamp(48px, calc((72 / 1300) * var(--container-width)), 72px);
    --font-size-h3: clamp(36px, calc((48 / 1300) * var(--container-width)), 48px);
    --font-size-h4: clamp(24px, calc((32 / 1300) * var(--container-width)), 32px);
    --font-size-h5: clamp(16px, calc((20 / 1300) * var(--container-width)), 20px);
    --font-size-body: clamp(12px, calc((14 / 1300) * var(--container-width)), 14px);
    --sizing-l: clamp(80px, calc((160 / 1300) * var(--container-width)), 160px);
    --sizing-r: clamp(20px, calc((20 / 1300) * var(--container-width)), 36px);
    --sizing-m: clamp(20px, calc((30 / 1300) * var(--container-width)), 30px);
    --corner-radius-l: clamp(24px, calc((72 / 1300) * var(--container-width)), 48px);
    --corner-radius-r: clamp(16px, calc((24 / 1300) * var(--container-width)), 24px);
    --corner-radius-s: clamp(8px, calc((16 / 1300) * var(--container-width)), 16px);
  }
}
@media (min-width: 992px) {
  :root {
    --container-width: calc(960px - 15px * 2);
  }
}
@media (min-width: 1300px) {
  :root {
    --container-width: calc(1295px - 15px * 2);
  }
}

.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-inline: 15px;
}
@media (min-width: 768px) {
  .container {
    width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 960px;
  }
}
@media (min-width: 1300px) {
  .container {
    width: 1295px;
  }
}

@font-face {
  font-family: "Aeonik Mono";
  font-style: normal;
  font-weight: bold;
  src: url("../../fonts/AeonikMono-Bold.woff2") format("woff2"), url("../../fonts/AeonikMono-Bold.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Aeonik Mono";
  font-style: normal;
  font-weight: 500;
  src: url("../../fonts/AeonikMono-Medium.woff2") format("woff2"), url("../../fonts/AeonikMono-Medium.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Aeonik Mono";
  font-style: normal;
  font-weight: normal;
  src: url("../../fonts/AeonikMono-Regular.woff2") format("woff2"), url("../../fonts/AeonikMono-Regular.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "PP Neue Montreal";
  font-weight: 1 999;
  src: url("../../fonts/PPNeueMontreal-Variable.woff2") format("woff2"), url("../../fonts/PPNeueMontreal-Variable.woff") format("woff");
}
.heading, .content-area h2,
.content-area h3,
.content-area h4, .h5, .h4, .h3, .h2, .h1 {
  font-family: var(--font-family-sansserif);
  font-weight: 400;
  line-height: 1;
  text-wrap: balance;
  -webkit-hyphens: none;
          hyphens: none;
}

.h1 {
  font-size: var(--font-size-h1);
}

.h2 {
  font-size: var(--font-size-h2);
}

.h3 {
  font-size: var(--font-size-h3);
}

.h4, .content-area h2 {
  font-size: var(--font-size-h4);
  line-height: 1.1;
}

.h5, .content-area h3 {
  font-size: var(--font-size-h5);
  line-height: 1.2;
  text-wrap: pretty;
}

.body, body, .body-caps, .button, .caption, .header, .heading-dot {
  font-family: var(--font-family-mono);
  font-size: var(--font-size-body);
  font-weight: 400;
  line-height: 1.5;
}

.body-caps, .button, .caption, .header, .heading-dot {
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.header, .heading-dot {
  font-weight: 500;
}

.heading-dot {
  align-items: center;
  text-box: trim-both cap alphabetic;
  vertical-align: middle;
  position: relative;
}
.heading-dot:before {
  content: "⬤";
  color: var(--orange);
  margin-right: 0.6em;
}

.caption {
  font-size: var(--font-size-caption);
  font-weight: 500;
}

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

* {
  outline: none;
}

html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
  scroll-behavior: smooth;
  interpolate-size: allow-keywords;
}

body {
  min-width: 320px;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  line-height: 1.4;
  background-color: var(--pale-grey);
  color: var(--text-dark);
  text-wrap: pretty;
}
body ::-moz-selection {
  background-color: var(--neutral-2);
  color: var(--white);
}
body ::selection {
  background-color: var(--neutral-2);
  color: var(--white);
}
body.page-template-page-availability {
  background-color: var(--white);
}

a {
  text-decoration: none;
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

[id] {
  scroll-margin-top: calc(var(--header-height) * -1);
}

img,
svg {
  display: block;
  max-width: 100%;
  height: auto;
}

sup {
  vertical-align: super;
  font-size: 0.55em;
}

p:not(:first-child) {
  margin-top: 1em;
}

.grecaptcha-badge {
  visibility: hidden;
}

.media-wrapper {
  position: relative;
}
.media-wrapper img,
.media-wrapper video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.box-intro {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
  max-width: 300px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .box-intro {
    max-width: unset;
    gap: clamp(10px, 20 / 1300 * var(--container-width), 20px);
  }
}

.main-content-wrapper {
  background-color: inherit;
  position: relative;
  overflow: hidden;
}

body.home header {
  background-color: var(--black);
  transition: background-color 0.25s ease;
}
body.home header .burger-menu {
  --btn-outline: var(--grey);
}
body.home header:hover {
  background-color: var(--orange);
}

header {
  height: var(--header-height);
  background-color: var(--orange);
  color: var(--white);
  padding-inline: 20px;
  position: sticky;
  z-index: 99999;
  top: 0;
  transition: translate 0.5s;
}
@media (min-width: 768px) {
  header {
    padding-inline: clamp(30px, 40 / 1300 * var(--container-width), 40px);
  }
}
header.hidden {
  translate: 0 -101%;
}
header .header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
@media (min-width: 992px) {
  header .header-inner {
    justify-content: space-between;
    gap: 10px;
  }
}
@media (min-width: 1300px) {
  header .header-left {
    flex: 1;
  }
}
header .header-right {
  display: none;
}
@media (min-width: 992px) {
  header .header-right {
    display: flex;
    justify-content: flex-end;
  }
}
@media (min-width: 1300px) {
  header .header-right {
    flex: 1;
  }
}
header .header-logo-wrapper {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
header .header-logo-wrapper.header-logo-wrapper-desktop {
  display: none;
}
@media (min-width: 768px) {
  header .header-logo-wrapper.header-logo-wrapper-desktop {
    display: block;
  }
}
header .header-logo-wrapper.header-logo-wrapper-mobile {
  display: block;
}
@media (min-width: 768px) {
  header .header-logo-wrapper.header-logo-wrapper-mobile {
    display: none;
  }
}
header .header-logo-wrapper svg {
  width: 80px;
}
@media (min-width: 768px) {
  header .header-logo-wrapper svg {
    width: clamp(80px, 100 / 1300 * var(--container-width), 100px);
  }
}
header .header-nav {
  display: none;
}
@media (min-width: 992px) {
  header .header-nav {
    display: block;
    flex: 0.2 0 auto;
  }
}
@media (min-width: 1300px) {
  header .header-nav {
    flex-grow: 0;
  }
}
header .header-nav .menu {
  display: flex;
  align-items: center;
  gap: 0;
  white-space: nowrap;
  justify-content: space-between;
}
@media (min-width: 1300px) {
  header .header-nav .menu {
    gap: clamp(15px, 30 / 1300 * var(--container-width), 30px);
  }
}
header .header-nav .menu-item.current-menu-item a {
  color: var(--black);
}
header .header-nav .menu-item a {
  font-weight: 500;
  display: block;
  padding: 10px 10px;
  color: inherit;
  transition: color 0.2s;
  transition-timing-function: ease-in-out;
}
header .header-nav .menu-item a:hover {
  color: var(--black);
}
header .portal-button {
  --btn-text: var(--white);
  --btn-bg: transparent;
  --btn-outline: var(--white);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--black);
}
header .burger-menu {
  --btn-text: var(--white);
  --btn-outline: var(--white);
}
@media (min-width: 992px) {
  header .burger-menu {
    display: none;
  }
}
header .burger-menu .icon {
  width: 48px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  scale: 0.67 1;
  transition: scale var(--td);
  transition-timing-function: ease-in-out;
}
header .burger-menu .icon span {
  display: block;
  width: 100%;
  height: 1px;
  background-color: currentColor;
}
header .burger-menu .label {
  display: none;
}
header .burger-menu:hover .icon {
  scale: 1 1;
}

.main-menu {
  position: fixed;
  background-color: var(--white);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  pointer-events: none;
  translate: 101% 0;
  transition: translate 0.3s ease-out;
}
.main-menu[open] {
  pointer-events: all;
  translate: 0 0;
}
.main-menu .container {
  height: 100%;
}
.main-menu .main-menu-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.main-menu .main-menu-inner > * {
  flex: 1;
}
.main-menu .main-menu-top {
  padding-block: 15px;
  display: flex;
  align-items: flex-start;
}
.main-menu .top-buttons {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.main-menu .button-close {
  --btn-text: var(--orange);
  --btn-bg: transparent;
  --btn-outline: var(--orange);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--orange);
}
.main-menu .main-menu-middle {
  display: flex;
  align-items: center;
  justify-content: center;
}
.main-menu .main-menu-middle .menu {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  gap: 15px;
}
.main-menu .main-menu-middle .current-menu-item a {
  color: var(--orange);
}
.main-menu .main-menu-middle a {
  transition: 0.25s all;
  color: inherit;
}
.main-menu .main-menu-middle a:hover {
  color: var(--orange);
}
.main-menu .main-menu-bottom {
  display: flex;
  align-items: flex-end;
  padding-block: 20px;
}
.main-menu .main-menu-bottom a {
  transition: 0.25s all;
  color: inherit;
}
.main-menu .main-menu-bottom a:hover {
  color: var(--orange);
}
.main-menu .policy-nav {
  width: 100%;
}
.main-menu .policy-nav .menu {
  display: flex;
  gap: 25px;
  justify-content: center;
}

footer {
  background-color: var(--black);
  color: var(--grey);
  display: flex;
  flex-direction: column;
  padding-block: 24px;
  gap: 60px;
}
@media (min-width: 768px) {
  footer {
    gap: 80px;
    padding-bottom: 0;
    padding-top: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
footer .footer-top-inner {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  footer .footer-top-inner {
    flex-direction: row;
    justify-content: space-between;
  }
}
footer .footer-links {
  width: 100%;
  display: flex;
  max-width: 100%;
}
footer .footer-links nav {
  width: 50%;
}
@media (min-width: 768px) {
  footer .footer-links nav {
    width: unset;
  }
}
@media (min-width: 768px) {
  footer .footer-links {
    width: 300px;
    justify-content: space-between;
  }
}
@media (min-width: 992px) {
  footer .footer-links {
    width: 350px;
  }
}
@media (min-width: 1300px) {
  footer .footer-links {
    width: 450px;
  }
}
footer .footer-copyright {
  display: none;
}
footer .footer-copyright .footer-copyright-logo img,
footer .footer-copyright .footer-copyright-logo svg {
  float: right;
  display: block;
  margin: 25px 0px 0px 0px;
}
footer .footer-copyright .footer-copyright-logo img path,
footer .footer-copyright .footer-copyright-logo svg path {
  transition: 0.25s all;
}
footer .footer-copyright .footer-copyright-logo img:hover path,
footer .footer-copyright .footer-copyright-logo svg:hover path {
  fill: var(--white);
}
@media (min-width: 768px) {
  footer .footer-copyright {
    display: block;
  }
}
footer .footer-nav .menu {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: flex-start;
}
footer .footer-nav a {
  color: inherit;
  display: block;
  transition: color 0.2s;
}
footer .footer-nav a:hover {
  color: var(--white);
}
footer .footer-logo {
  display: block;
}
@media (min-width: 768px) {
  footer .footer-logo-mobile {
    display: none;
  }
}
footer .footer-logo-mobile svg {
  width: var(--container-width);
  margin-inline: auto;
}
footer .footer-logo-desktop {
  display: none;
}
@media (min-width: 768px) {
  footer .footer-logo-desktop {
    display: block;
  }
}
footer .footer-logo-desktop svg {
  width: 100%;
}
footer .footer-mobile {
  display: block;
}
footer .footer-mobile .footer-copyright {
  display: flex;
  justify-content: space-between;
}
footer .footer-mobile .footer-copyright-logo img,
footer .footer-mobile .footer-copyright-logo svg {
  width: 30px;
  height: auto;
  margin: -3px 0px 0px 0px;
}
@media (min-width: 768px) {
  footer .footer-mobile {
    display: none;
  }
}

.button {
  --btn-text: var(--black);
  --btn-bg: transparent;
  --btn-outline: var(--black);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--black);
  --pd-v: 8px;
  --pd-h: 16px;
  --td: 0.25s;
  border: 1px solid var(--btn-outline);
  color: var(--btn-text);
  background-color: var(--btn-bg);
  border-radius: 36px;
  padding-block: var(--pd-v);
  padding-inline: var(--pd-h);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  font-weight: 500;
  flex-shrink: 0;
  gap: 12px;
  transition: border-color var(--td), background-color var(--td), color var(--td), opacity 0.2s;
  transition-timing-function: ease-in-out;
}
.button:is(:hover, a:hover .button):not([disabled]) {
  --btn-text: var(--btn-hover-text);
  --btn-bg: var(--btn-hover-bg);
  --btn-outline: var(--btn-hover-bg);
}
.button:is(:hover, a:hover .button):not([disabled]) svg path:nth-of-type(1) {
  translate: 10% 0;
}
.button:is(:hover, a:hover .button):not([disabled]) svg path:nth-of-type(2) {
  scale: 1.2 1;
}

@media (min-width: 768px) {
  .button {
    --pd-h: 24px;
  }
}
.button svg {
  overflow: visible;
  height: 12px;
  width: auto;
}
@media (min-width: 768px) {
  .button svg {
    height: 16px;
  }
}
.button svg path {
  stroke: var(--btn-text);
  transition: stroke var(--td), translate var(--td), scale var(--td);
  transition-timing-function: ease-in-out;
  transform-origin: center;
}
.button--reverse {
  flex-direction: row-reverse;
}
.button--reverse svg {
  scale: -1 1;
}
.button--white {
  --btn-text: var(--white);
  --btn-outline: var(--white);
  --btn-hover-text: var(--orange);
  --btn-hover-bg: var(--white);
}
.button--orange {
  --btn-text: var(--orange);
  --btn-outline: var(--orange);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--orange);
}
.button--orange-full {
  --btn-bg: var(--orange);
  --btn-text: var(--white);
  --btn-outline: var(--orange);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--black);
}
.button--border-grey {
  --btn-outline: var(--grey);
}
.button--clear {
  --btn-text: var(--grey);
  --btn-bg: var(--white);
  --btn-outline: var(--white);
  --btn-hover-bg: var(--white);
  --btn-hover-text: var(--black);
}
.button .label {
  text-box: trim-both cap alphabetic;
}

.consent {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  transform: translateY(calc(100% + 40px));
  transition: transform 0.4s;
  z-index: 999;
  pointer-events: none;
  background-color: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  padding-block: 20px;
}
@media (min-width: 768px) {
  .consent {
    padding-block: 30px;
  }
}
.consent--visible {
  transform: translateY(0);
}

.consent-inner {
  pointer-events: auto;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (min-width: 768px) {
  .consent-inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
  }
}
.consent-inner .consent-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.consent-inner .consent-links a {
  color: inherit;
  border-bottom: 1px solid currentColor;
}
.consent-inner .consent-buttons {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  flex-shrink: 0;
}
.consent-inner .consent-button {
  width: auto;
  text-align: center;
}

.banner-home {
  display: flex;
  padding: 16px 16px 60px 16px;
  flex-direction: column;
  justify-content: space-between;
  background-color: #000000;
  min-height: 600px;
  height: calc(100vh + 5px);
  position: relative;
  background-size: cover !important;
  background-position: center center !important;
}
@media (min-width: 768px) {
  .banner-home {
    min-height: 700px;
    padding: 24px 0 125px 0;
  }
}
@media (min-width: 992px) {
  .banner-home {
    min-height: 900px;
  }
}
.banner-home .banner-logo.banner-logo-desktop {
  display: none;
}
@media (min-width: 768px) {
  .banner-home .banner-logo.banner-logo-desktop {
    display: block;
  }
}
.banner-home .banner-logo.banner-logo-mobile {
  display: block;
}
@media (min-width: 768px) {
  .banner-home .banner-logo.banner-logo-mobile {
    display: none;
  }
}
.banner-home .banner-logo img,
.banner-home .banner-logo svg {
  width: 100%;
}
.banner-home .banner-centre-inner {
  gap: 24px;
  display: flex;
  flex-direction: column;
  text-align: center;
  max-width: 800px;
  margin-inline: auto;
  color: #ffffff;
}
@media (min-width: 768px) {
  .banner-home .banner-centre-inner {
    gap: var(--sizing-r);
  }
}
@media (min-width: 768px) {
  .banner-home .banner-centre-inner .button {
    margin: 30px 0 0 0;
  }
}
.banner-home + * {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: calc(-1 * var(--corner-radius-l));
  position: relative;
}
@media (min-width: 768px) {
  .banner-home + * {
    border-top-left-radius: var(--corner-radius-l);
    border-top-right-radius: var(--corner-radius-l);
  }
}

.banner-video {
  height: calc(100svh - var(--header-height));
}
.banner-video .banner-bg {
  height: 100%;
}

.banner-image {
  position: relative;
  border-bottom-left-radius: var(--corner-radius-l);
  overflow: hidden;
  min-height: 360px;
  display: flex;
  padding-block: 30px;
  max-width: 1920px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .banner-image {
    min-height: unset;
    aspect-ratio: 3;
    padding-block: clamp(30px, 80 / 1300 * var(--container-width), 80px);
  }
}
.banner-image .banner-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.banner-image .banner-content {
  position: relative;
  color: var(--white);
  width: 100%;
  display: flex;
  align-items: flex-end;
}
@media (min-width: 768px) {
  .banner-image .banner-content {
    height: 100%;
  }
}
.banner-image .banner-content-inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
  filter: drop-shadow(0px 0px 40px rgb(0, 0, 0));
}
@media (min-width: 768px) {
  .banner-image .banner-content-inner {
    max-width: 800px;
    gap: clamp(10px, 30 / 1300 * var(--container-width), 30px);
  }
}
.banner-image .banner-heading {
  text-box: trim-both cap alphabetic;
}
.banner-image .banner-line-1 {
  display: none;
}
@media (min-width: 768px) {
  .banner-image .banner-line-1 {
    display: block;
    position: absolute;
    left: 0;
    top: 5%;
    width: 100%;
    height: 1px;
    background-color: var(--orange);
  }
}
.banner-image .banner-line-2 {
  display: none;
}
@media (min-width: 768px) {
  .banner-image .banner-line-2 {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 18%;
    height: 50vh;
    border-left: 1px solid var(--orange);
    border-bottom: 1px solid var(--orange);
    border-bottom-left-radius: var(--corner-radius-l);
  }
}

.banner-image-v2 {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  display: flex;
  padding-block: calc(30px + var(--corner-radius-l));
  margin-inline: auto;
}
.banner-image-v2 + * {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  margin-top: calc(-1 * var(--corner-radius-l));
  position: relative;
}
@media (min-width: 768px) {
  .banner-image-v2 + * {
    border-top-left-radius: var(--corner-radius-l);
    border-top-right-radius: var(--corner-radius-l);
  }
}
@media (min-width: 768px) {
  .banner-image-v2 {
    min-height: unset;
    padding: 0;
    padding-bottom: var(--corner-radius-l);
    max-height: 700px;
  }
}
.banner-image-v2 .banner-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.banner-image-v2 .banner-content {
  position: relative;
  color: var(--white);
  width: 100%;
  display: flex;
  align-items: flex-end;
}
@media (min-width: 768px) {
  .banner-image-v2 .banner-content {
    width: 100%;
    aspect-ratio: 3;
    padding-block: clamp(30px, 80 / 1300 * var(--container-width), 80px);
  }
}
.banner-image-v2 .banner-content-inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
  filter: drop-shadow(0px 0px 40px rgb(0, 0, 0));
}
@media (min-width: 768px) {
  .banner-image-v2 .banner-content-inner {
    max-width: clamp(500px, 800 / 1300 * var(--container-width), 800px);
    gap: clamp(10px, 30 / 1300 * var(--container-width), 30px);
  }
}
.banner-image-v2 .banner-heading {
  text-box: trim-both cap alphabetic;
}

body.page-template-page-availability .banner-image-v2 + * {
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
}
@media (min-width: 768px) {
  body.page-template-page-availability .banner-image-v2 + * {
    border-top-left-radius: var(--corner-radius-l);
    border-top-right-radius: var(--corner-radius-l);
  }
}

.intro-centre {
  margin-block: var(--sizing-l);
  margin-top: clamp(80px, 95 / 1300 * var(--container-width), 95px);
  margin-bottom: 35px;
}
@media (min-width: 768px) {
  .intro-centre {
    margin-bottom: 50px;
  }
}
.intro-centre .intro-centre-inner {
  display: flex;
  flex-direction: column;
  gap: var(--sizing-r);
  text-align: center;
  max-width: 800px;
  margin-inline: auto;
}
.intro-centre .h2 {
  font-size: var(--font-size-h3);
}
.intro-centre .text {
  width: 320px;
  max-width: 100%;
  margin: 0 auto;
  display: block;
}
@media (min-width: 768px) {
  .intro-centre .text {
    width: unset;
  }
}

.latest-updates-section {
  background-color: var(--dark-grey);
  padding-block: 35px;
  overflow: hidden;
  color: #ffffff;
}
@media (min-width: 768px) {
  .latest-updates-section {
    padding-block: clamp(60px, 80 / 1300 * var(--container-width), 80px);
  }
}
.latest-updates-section .latest-updates-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 992px) {
  .latest-updates-section .latest-updates-inner {
    gap: 70px;
  }
}
.latest-updates-section .left-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
  z-index: 3;
}
@media (min-width: 992px) {
  .latest-updates-section .left-block {
    flex: 1;
    gap: clamp(20px, 30 / 1300 * var(--container-width), 30px);
  }
}
.latest-updates-section .swiper-container {
  min-width: 0;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  gap: 20px;
}
@media (min-width: 768px) {
  .latest-updates-section .swiper-container {
    gap: 30px;
    flex-direction: column;
    gap: clamp(30px, 40 / 1300 * var(--container-width), 40px);
  }
}
@media (min-width: 992px) {
  .latest-updates-section .swiper-container::after {
    content: "";
    display: none;
    position: absolute;
    right: 100%;
    top: 50%;
    width: 100vw;
    height: 101%;
    translate: 0 -50%;
    background: linear-gradient(to right, var(--white) 90%, transparent);
    z-index: 2;
  }
}
.latest-updates-section .swiper-controls {
  --colour: var(--white);
}
.latest-updates-section .swiper-pagination {
  justify-content: center;
  display: flex;
  gap: 8px;
}
@media (min-width: 768px) {
  .latest-updates-section .swiper-pagination {
    gap: clamp(8px, 12 / 1300 * var(--container-width), 12px);
  }
}
.latest-updates-section .swiper-pagination-bullet {
  width: 8px;
  aspect-ratio: 1;
  background-color: var(--white);
  border-radius: 50%;
  opacity: 0.2;
  cursor: pointer;
}
.latest-updates-section .swiper-pagination-bullet-active {
  opacity: 1;
}
.latest-updates-section .swiper-updates {
  min-width: 0;
  width: 100%;
}
.latest-updates-section .swiper-buttons {
  gap: 12px;
  display: flex;
  justify-content: center;
}
.latest-updates-section .swiper-buttons .button.swiper-button-disabled:hover svg path {
  stroke: var(--white);
}
.latest-updates-section .swiper-buttons .button:hover svg path {
  stroke: var(--orange);
}
.latest-updates-section .swiper-slide {
  box-sizing: border-box;
}

.update-card {
  display: flex;
  border-radius: 8px;
  flex-direction: column;
  background-color: var(--black);
  padding: 16px 16px;
  color: inherit;
}
@media (min-width: 768px) {
  .update-card {
    padding: 24px 24px;
    border-radius: var(--corner-radius-s);
  }
}
.update-card .update-image {
  aspect-ratio: 385/335;
  width: 100%;
}
@media (min-width: 768px) {
  .update-card .update-image {
    aspect-ratio: 370/300;
  }
}
.update-card .update-content {
  color: var(--text-light);
  display: flex;
  flex-direction: row;
  margin: 0px 0px 25px 0px;
  gap: 45px;
  flex: 1;
  justify-content: space-between;
}
.update-card .update-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  width: 240px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .update-card button {
    min-width: 70px;
  }
}

.form-section {
  background-color: var(--dark-grey);
  color: var(--white);
  padding-block: 40px;
}
@media (min-width: 768px) {
  .form-section {
    padding-block: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
.form-section .form-section-inner {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 992px) {
  .form-section .form-section-inner {
    flex-direction: row;
    gap: 0;
  }
}
.form-section .content-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 992px) {
  .form-section .content-block {
    flex: 0 0 50%;
    padding-right: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
@media (min-width: 992px) {
  .form-section .form-block {
    flex: 1;
  }
}
.form-section form.submitting button[type=submit] {
  visibility: hidden;
}
.form-section form.submitting .loader {
  visibility: visible;
}
.form-section .wpcf7-not-valid-tip {
  display: none;
}
.form-section .wpcf7-response-output {
  display: none;
}
.form-section .form-fields {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.form-section .form-fields a {
  color: inherit;
  text-decoration: underline;
}
.form-section .form-main {
  display: grid;
  width: 100%;
}
.form-section .form-main > *:not(:first-child) {
  margin-top: -1px;
}
.form-section .recaptcha-text {
  font-size: 10px;
}
.form-section .form-bottom {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: flex-start;
}
.form-section .wpcf7-list-item {
  margin: 0;
}
.form-section .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 11px;
}
.form-section .wpcf7-list-item input {
  accent-color: var(--orange);
  margin: 0;
}
.form-section .wpcf7-list-item:has([aria-invalid=true]) {
  color: var(--orange);
}
.form-section input[type=text],
.form-section input[type=email],
.form-section textarea {
  background-color: transparent;
  border: none;
  border: 1px solid var(--white);
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  padding: 12px;
  color: inherit;
  display: block;
  overflow: visible;
}
.form-section input[type=text][aria-invalid=true],
.form-section input[type=email][aria-invalid=true],
.form-section textarea[aria-invalid=true] {
  color: var(--orange);
}
.form-section input[type=text][aria-invalid=true]::-moz-placeholder, .form-section input[type=email][aria-invalid=true]::-moz-placeholder, .form-section textarea[aria-invalid=true]::-moz-placeholder {
  color: var(--orange);
}
.form-section input[type=text][aria-invalid=true]::placeholder,
.form-section input[type=email][aria-invalid=true]::placeholder,
.form-section textarea[aria-invalid=true]::placeholder {
  color: var(--orange);
}
.form-section input[type=text]::-moz-placeholder, .form-section input[type=email]::-moz-placeholder, .form-section textarea::-moz-placeholder {
  color: var(--pale-grey);
  text-transform: uppercase;
}
.form-section input[type=text]::placeholder,
.form-section input[type=email]::placeholder,
.form-section textarea::placeholder {
  color: var(--pale-grey);
  text-transform: uppercase;
}
.form-section textarea {
  resize: none;
  height: 150px;
}
.form-section .wpcf7-spinner {
  display: none;
}
.form-section .button-wrapper {
  flex-shrink: 0;
  display: grid;
}
.form-section .button {
  grid-area: 1/1/1/1;
}

.loader {
  grid-area: 1/1/1/1;
  justify-self: center;
  align-self: center;
  visibility: hidden;
  height: 100%;
  aspect-ratio: 1;
  border-radius: 50%;
  position: relative;
  animation: rotate 1s linear infinite;
}

.loader::before,
.loader::after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  inset: 0px;
  border-radius: 50%;
  border: 4px solid var(--white);
  animation: prixClipFix 2s linear infinite;
}

.loader::after {
  border-color: var(--orange);
  animation: prixClipFix 2s linear infinite, rotate 0.5s linear infinite reverse;
  inset: 5px;
}

@keyframes rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes prixClipFix {
  0% {
    clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);
  }
  25% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);
  }
  50% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);
  }
  75% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);
  }
  100% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);
  }
}
.generic-main {
  padding-block: 40px;
}
@media (min-width: 768px) {
  .generic-main {
    padding-block: clamp(40px, 100 / 1300 * var(--container-width), 100px);
  }
}
.generic-main .generic-main-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 900px;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .generic-main .generic-main-inner {
    gap: clamp(30px, 50 / 1300 * var(--container-width), 50px);
  }
}

.content-area > *:first-child {
  margin-top: 0 !important;
}
.content-area strong {
  font-weight: 600;
}
.content-area a {
  color: inherit;
  text-decoration: underline;
}
.content-area .heading, .content-area h2,
.content-area h3,
.content-area h4 {
  line-height: 1.1;
}
.content-area h2,
.content-area h3,
.content-area h4 {
  margin-bottom: 0.5em;
}
.content-area h2:not(:first-child),
.content-area h3:not(:first-child),
.content-area h4:not(:first-child) {
  margin-top: 1.2em;
}
.content-area h2:not(:first-child) {
  margin-top: 1.5em;
}
.content-area h3:not(:first-child) {
  margin-top: 1.5em;
}
.content-area h2 + p,
.content-area h3 + p {
  margin-top: 0;
}
.content-area ol {
  list-style-type: none;
  counter-reset: item;
  margin: 0;
  padding-left: 0.6em;
  margin-top: 0.5em;
}
.content-area ol > li {
  display: table;
  counter-increment: item;
  margin-bottom: 0.6em;
}
.content-area ol > li:before {
  content: counters(item, ".") ". ";
  display: table-cell;
  padding-right: 0.6em;
}
ol > .content-area ol > li {
  margin: 0;
}
ol > .content-area ol > li:before {
  content: counters(item, "") " ";
}
.content-area ol[type=a] li:before {
  content: "(" counters(item, "", lower-alpha) ") ";
}
.content-area ul {
  list-style-type: disc;
  padding-left: 1.2em;
}
.content-area ul:not(:first-child) {
  margin-top: 0.8em;
}
.content-area ul ul {
  padding-left: 1.5em;
  margin-top: 0.2em;
}
.content-area ul > li {
  padding-left: 1em;
}
.content-area ul > li:not(:first-child) {
  margin-top: 0.4em;
}
.content-area ul > li::marker {
  content: "•";
  color: var(--orange);
}
.content-area blockquote {
  padding-left: 1em;
  border-left: 1px solid var(--orange);
}
.content-area blockquote:not(:first-child) {
  margin-top: 1em;
}
.content-area table {
  margin-block: 1em;
  border: 1px solid currentColor;
  width: 100%;
}
.content-area th,
.content-area td {
  border: 1px solid currentColor;
  padding: 0.4em 0.8em;
}
.content-area sup {
  vertical-align: super;
  font-size: 0.8em;
}
.content-area .small {
  font-size: 0.8em;
}

.holding-page {
  background-color: var(--black);
  color: var(--white);
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.holding-page .holding-page-header {
  display: none;
  background-color: var(--orange);
  padding-block: 15px;
}
@media (min-width: 768px) {
  .holding-page .holding-page-header {
    display: block;
  }
}
.holding-page .tenant-button {
  --btn-text: var(--white);
  --btn-bg: transparent;
  --btn-outline: var(--orange);
  --btn-hover-bg: var(--orange);
}
.holding-page .holding-page-main {
  flex: 1 0 auto;
  display: flex;
}
.holding-page .cody-logo-mobile {
  width: 100%;
}
@media (min-width: 768px) {
  .holding-page .cody-logo-mobile {
    display: none;
  }
}
.holding-page .cody-logo-mobile svg {
  width: 100%;
}
.holding-page .main-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-top: 20px;
  padding-bottom: 50px;
  gap: 30px;
}
@media (min-width: 768px) {
  .holding-page .main-inner {
    padding-block: clamp(50px, 3.3vw, 80px);
    gap: clamp(40px, 70 / 1300 * var(--container-width), 70px);
  }
}
.holding-page .main-top {
  display: flex;
  flex-direction: column;
  gap: 25px;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .holding-page .main-top {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
.holding-page .main-heading {
  font-size: 60px;
}
@media (min-width: 768px) {
  .holding-page .main-heading {
    order: -1;
    font-size: 50px;
  }
}
.holding-page .main-bottom {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .holding-page .main-bottom {
    gap: clamp(40px, 60 / 1300 * var(--container-width), 60px);
  }
}
.holding-page .holding-page-footer {
  display: none;
}
@media (min-width: 768px) {
  .holding-page .holding-page-footer {
    display: block;
  }
}
.holding-page .holding-page-footer .footer-logo {
  display: flex;
  justify-content: center;
}
.holding-page .holding-page-footer .footer-logo svg {
  width: 100%;
  max-width: 1700px;
}
@media (min-width: 768px) {
  .holding-page .holding-page-footer .footer-logo-mobile {
    display: none;
  }
}
.holding-page .holding-page-footer .footer-logo-desktop {
  display: none;
}
@media (min-width: 768px) {
  .holding-page .holding-page-footer .footer-logo-desktop {
    display: flex;
  }
}
@media (min-width: 768px) {
  .holding-page .form-wrapper {
    max-width: 500px;
  }
}
.holding-page .form-wrapper .form-fields {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.holding-page .form-wrapper .form-fields a {
  color: inherit;
  text-decoration: underline;
}
.holding-page .form-wrapper .form-main {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 768px) {
  .holding-page .form-wrapper .form-main {
    flex-direction: row;
  }
  .holding-page .form-wrapper .form-main > * {
    flex: 1;
  }
}
.holding-page .form-wrapper form.submitting button[type=submit] {
  visibility: hidden;
}
.holding-page .form-wrapper form.submitting .loader {
  visibility: visible;
}
.holding-page .form-wrapper .wpcf7-not-valid-tip {
  display: none;
}
.holding-page .form-wrapper .wpcf7-response-output {
  display: none;
}
.holding-page .form-wrapper .recaptcha-text {
  font-size: 10px;
}
.holding-page .form-wrapper .form-bottom {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  align-items: center;
}
.holding-page .form-wrapper .wpcf7-list-item {
  margin: 0;
}
.holding-page .form-wrapper .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 11px;
}
.holding-page .form-wrapper .wpcf7-list-item input {
  accent-color: var(--orange);
  margin: 0;
}
.holding-page .form-wrapper .wpcf7-list-item:has([aria-invalid=true]) {
  color: var(--orange);
}
.holding-page .form-wrapper input[type=text],
.holding-page .form-wrapper input[type=email],
.holding-page .form-wrapper input[type=tel],
.holding-page .form-wrapper textarea {
  background-color: transparent;
  border: 1px solid var(--white);
  border-radius: 60px;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  padding: 12px;
  color: inherit;
  display: block;
  overflow: visible;
}
.holding-page .form-wrapper input[type=text][aria-invalid=true],
.holding-page .form-wrapper input[type=email][aria-invalid=true],
.holding-page .form-wrapper input[type=tel][aria-invalid=true],
.holding-page .form-wrapper textarea[aria-invalid=true] {
  color: var(--orange);
}
.holding-page .form-wrapper input[type=text][aria-invalid=true]::-moz-placeholder, .holding-page .form-wrapper input[type=email][aria-invalid=true]::-moz-placeholder, .holding-page .form-wrapper input[type=tel][aria-invalid=true]::-moz-placeholder, .holding-page .form-wrapper textarea[aria-invalid=true]::-moz-placeholder {
  color: var(--orange);
}
.holding-page .form-wrapper input[type=text][aria-invalid=true]::placeholder,
.holding-page .form-wrapper input[type=email][aria-invalid=true]::placeholder,
.holding-page .form-wrapper input[type=tel][aria-invalid=true]::placeholder,
.holding-page .form-wrapper textarea[aria-invalid=true]::placeholder {
  color: var(--orange);
}
.holding-page .form-wrapper input[type=text]::-moz-placeholder, .holding-page .form-wrapper input[type=email]::-moz-placeholder, .holding-page .form-wrapper input[type=tel]::-moz-placeholder, .holding-page .form-wrapper textarea::-moz-placeholder {
  color: var(--pale-grey);
}
.holding-page .form-wrapper input[type=text]::placeholder,
.holding-page .form-wrapper input[type=email]::placeholder,
.holding-page .form-wrapper input[type=tel]::placeholder,
.holding-page .form-wrapper textarea::placeholder {
  color: var(--pale-grey);
}
.holding-page .form-wrapper textarea {
  resize: none;
  height: 150px;
}
.holding-page .form-wrapper .wpcf7-spinner {
  display: none;
}
.holding-page .form-wrapper .button-wrapper {
  flex-shrink: 0;
  display: grid;
}
.holding-page .form-wrapper .button {
  --btn-text: var(--orange);
  --btn-bg: transparent;
  --btn-outline: var(--orange);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--orange);
  grid-area: 1/1/1/1;
}
.holding-page .agents-block {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (min-width: 768px) {
  .holding-page .agents-block {
    gap: clamp(30px, 40 / 1300 * var(--container-width), 40px);
  }
}
.holding-page .agent-blocks {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (min-width: 768px) {
  .holding-page .agent-blocks {
    flex-direction: row;
    gap: clamp(60px, 100 / 1300 * var(--container-width), 100px);
  }
}
.holding-page .agent-blocks a {
  color: var(--orange);
  display: block;
}
.holding-page .agent-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .holding-page .agent-block {
    gap: clamp(20px, 30 / 1300 * var(--container-width), 30px);
  }
}
@media (min-width: 768px) {
  .holding-page .agent-logo {
    height: 48px;
  }
}
.holding-page .agent-logo img {
  max-height: 100%;
  width: auto;
}
.holding-page .agents {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 768px) {
  .holding-page .agents {
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.holding-page .agent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.intro-dual-cols {
  margin-block: 40px;
  background-color: inherit;
}
@media (min-width: 768px) {
  .intro-dual-cols {
    margin-block: clamp(40px, 80 / 1300 * var(--container-width), 80px);
    margin-bottom: clamp(80px, 220 / 1300 * var(--container-width), 220px);
  }
}
.intro-dual-cols:not(:has(.intro-right)) {
  margin-block: 35px;
}
@media (min-width: 768px) {
  .intro-dual-cols:not(:has(.intro-right)) {
    margin-block: clamp(35px, 72 / 1300 * var(--container-width), 72px);
  }
}
.intro-dual-cols:not(:has(.intro-right)) .intro-left {
  align-items: center;
  text-align: center;
}
@media (min-width: 992px) {
  .intro-dual-cols:not(:has(.intro-right)) .intro-left {
    flex: 0 0 100%;
  }
}
.intro-dual-cols .intro-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: flex-start;
}
@media (min-width: 992px) {
  .intro-dual-cols .intro-inner {
    flex-direction: row;
  }
}
@media (min-width: 992px) {
  .intro-dual-cols .intro-left {
    flex: 0 0 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(20px, 30 / 1300 * var(--container-width), 30px);
  }
}
@media (min-width: 992px) {
  .intro-dual-cols .intro-right {
    flex: 0 0 50%;
    padding-right: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
@media (min-width: 992px) {
  .intro-dual-cols .intro-button-mobile {
    display: none;
  }
}
.intro-dual-cols .intro-button-desktop {
  display: none;
}
@media (min-width: 992px) {
  .intro-dual-cols .intro-button-desktop {
    display: revert;
  }
}
.intro-dual-cols .h4 p br {
  display: none;
}
@media (min-width: 992px) {
  .intro-dual-cols .h4 p br {
    display: block;
  }
}

@media (min-width: 1300px) {
  body.page-template-page-future .icons-section .icon-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.icons-section {
  margin-block: 80px;
}
@media (min-width: 768px) {
  .icons-section {
    margin-block: clamp(80px, 160 / 1300 * var(--container-width), 160px);
  }
}
.icons-section .icons-section-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .icons-section .icons-section-inner {
    gap: clamp(20px, 50 / 1300 * var(--container-width), 50px);
  }
}
.icons-section .icons-section-intro {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (min-width: 768px) {
  .icons-section .icons-section-intro {
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.icons-section .map-container {
  width: 100%;
  position: relative;
  container-name: map;
  container-type: inline-size;
}
.icons-section .map-container .map-overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.icons-section .map-container svg #buildings > g:hover g path {
  opacity: 1;
}
.icons-section .map-container svg #buildings > g g {
  stroke: black;
  stroke-width: 2px;
}
.icons-section .map-container svg #buildings > g g path {
  opacity: 0.4;
  transition: opacity 0.2s;
}
.icons-section .map-container svg #buildings > g g path[fill=black], .icons-section .map-container svg #buildings > g g path[fill=white], .icons-section .map-container svg #buildings > g g path[stroke=black] {
  display: none;
}
.icons-section .map-container svg #buildings > g g path[fill="#FC360D"] {
  fill: var(--orange);
}
.icons-section .map-container .map-pin {
  --height: max(20px, 2.7cqw);
  position: absolute;
  left: calc(var(--x, 0) * 1%);
  top: calc(var(--y, 0) * 1%);
  translate: -50% -50%;
  font-size: max(12px, 1.5cqw);
}
.icons-section .map-container .map-pin[data-expanded=true] .pin-main {
  background-color: var(--black);
  grid-template-columns: auto 1fr;
}
.icons-section .map-container .map-pin[data-expanded=true] .pin-number {
  border-color: var(--black);
}
.icons-section .map-container .map-pin[data-expanded=true] .pin-label {
  color: var(--white);
}
.icons-section .map-container .map-pin[data-label-position=middle] .pin-arm {
  display: none;
}
.icons-section .map-container .map-pin[data-expanded=false] {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: calc(var(--label-distance) * 1%);
}
.icons-section .map-container .map-pin[data-expanded=false] .pin-main {
  position: absolute;
  left: 50%;
  translate: -50% 0;
}
.icons-section .map-container .map-pin[data-expanded=false] .pin-main:hover .pin-label {
  width: auto;
}
.icons-section .map-container .map-pin[data-expanded=false] .pin-arm {
  width: 1px;
  background-color: var(--white);
  height: 100%;
}
.icons-section .map-container .map-pin[data-expanded=false] .pin-label {
  width: 0;
  transition: width 0.3s;
}
.icons-section .map-container .map-pin[data-expanded=false][data-label-position=above] {
  top: unset;
  bottom: calc(100% - var(--y) * 1%);
  translate: -50% 0;
}
.icons-section .map-container .map-pin[data-expanded=false][data-label-position=above] .pin-main {
  bottom: calc(100% - 1px);
}
.icons-section .map-container .map-pin[data-expanded=false][data-label-position=below] {
  translate: -50% 0;
}
.icons-section .map-container .map-pin[data-expanded=false][data-label-position=below] .pin-main {
  top: calc(100% - 1px);
}
.icons-section .map-container .map-pin .pin-main {
  display: flex;
  text-transform: uppercase;
  font-weight: 500;
  height: var(--height);
  align-items: center;
  background-color: var(--white);
  border-radius: 50px;
}
.icons-section .map-container .map-pin .pin-number {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: var(--white);
  border-radius: 50%;
  height: 100%;
  width: var(--height);
  border: 1px solid var(--white);
}
.icons-section .map-container .map-pin .pin-number span {
  text-box: trim-both cap alphabetic;
}
.icons-section .map-container .map-pin .pin-label {
  white-space: nowrap;
  overflow: hidden;
  display: flex;
}
.icons-section .map-container .map-pin .pin-label span {
  text-box: trim-both cap alphabetic;
}
.icons-section .map-container .map-pin .pin-label:before {
  content: "";
  display: block;
  width: calc(var(--height) / 4);
}
.icons-section .map-container .map-pin .pin-label:after {
  content: "";
  display: block;
  width: calc(var(--height) / 2);
}
.icons-section .siteplan-graphic {
  position: relative;
  margin-bottom: -1px;
}
.icons-section .siteplan-graphic svg,
.icons-section .siteplan-graphic img {
  border-top-left-radius: var(--corner-radius-r);
  border-top-right-radius: var(--corner-radius-r);
}
.icons-section .siteplan-graphic .map-label {
  position: absolute;
  color: #ffffff;
  left: 16px;
  top: 16px;
}
@media (min-width: 768px) {
  .icons-section .siteplan-graphic .map-label {
    left: 24px;
    top: 24px;
  }
}
.icons-section .siteplan-graphic .map-zoom {
  right: 12px;
  bottom: 12px;
  display: block;
  position: absolute;
}
@media (min-width: 768px) {
  .icons-section .siteplan-graphic .map-zoom {
    display: none;
  }
}
.icons-section .icons-box {
  display: flex;
  flex-direction: column;
  background-color: var(--white);
  border-radius: var(--corner-radius-r);
  overflow: hidden;
}
.icons-section .icons-segment {
  display: flex;
  flex-direction: column;
}
.icons-section .icons-segment:not(:first-of-type) {
  border-top: 1px solid var(--orange);
}
.icons-section .segment-heading {
  padding: 20px;
}
@media (min-width: 768px) {
  .icons-section .segment-heading {
    padding: clamp(20px, 25 / 1300 * var(--container-width), 25px);
  }
}
.icons-section .icon-grid {
  display: grid;
  gap: 30px;
  width: 100%;
  padding: 20px;
}
@media (min-width: 768px) {
  .icons-section .icon-grid {
    grid-template-columns: repeat(2, 1fr);
    padding: clamp(20px, 25 / 1300 * var(--container-width), 25px);
  }
}
@media (min-width: 1300px) {
  .icons-section .icon-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.icons-section .icon-item {
  display: flex;
  gap: 10px;
  align-items: center;
}
.icons-section .icon-item .description br {
  display: none;
}
@media (min-width: 1300px) {
  .icons-section .icon-item .description br {
    display: block;
  }
}
@media (min-width: 768px) {
  .icons-section .icon-item {
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.icons-section .number {
  display: flex;
  width: 24px;
  height: 24px;
  font-weight: 500;
  border-radius: 100px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  aspect-ratio: 1/1;
  border: 1px solid #000000;
  background: #ffffff;
  color: #000000;
  margin-top: 10px;
}
@media (min-width: 768px) {
  .icons-section .number {
    width: 28px;
    height: 28px;
  }
}
.icons-section .icon-wrapper {
  width: 80px;
  aspect-ratio: 1;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .icons-section .icon-wrapper {
    width: clamp(48px, 96 / 1300 * var(--container-width), 96px);
  }
}
.icons-section .icon-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.carousel-section {
  margin-block: 50px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .carousel-section {
    margin-block: clamp(50px, 100 / 1300 * var(--container-width), 100px);
  }
}
@media (min-width: 768px) {
  .carousel-section:not(:has(.box-intro)) {
    margin-block: clamp(50px, 160 / 1300 * var(--container-width), 160px);
  }
}
.carousel-section .carousel-section-inner {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (min-width: 768px) {
  .carousel-section .carousel-section-inner {
    gap: clamp(30px, 50 / 1300 * var(--container-width), 50px);
  }
}

.swiper-image-carousel-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .swiper-image-carousel-container {
    gap: clamp(30px, 40 / 1300 * var(--container-width), 40px);
  }
}
@media (min-width: 768px) {
  .swiper-image-carousel-container .swiper-image-carousel {
    order: -1;
  }
}
.swiper-image-carousel-container .swiper-wrapper {
  --max-height: 400px;
}
@media (min-width: 768px) {
  .swiper-image-carousel-container .swiper-wrapper {
    --max-height: clamp(400px, calc((500 / 1300) * var(--container-width)), 500px);
  }
}
.swiper-image-carousel-container .swiper-slide {
  max-width: 100%;
  width: auto;
  position: relative;
  align-self: flex-start;
  height: auto;
  box-sizing: border-box;
}
.swiper-image-carousel-container .slide-img-wrapper {
  position: relative;
  height: 100%;
}
.swiper-image-carousel-container .slide-img {
  width: auto;
  max-height: calc(var(--max-height) * var(--height-adjust, 1));
  max-width: 100%;
}
.swiper-image-carousel-container .image-caption {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 12px;
  color: var(--white);
  z-index: 2;
  font-size: var(--font-size-caption);
}
@media (min-width: 768px) {
  .swiper-image-carousel-container .image-caption {
    padding: clamp(14px, 16 / 1300 * var(--container-width), 16px);
  }
}
.swiper-image-carousel-container .image-caption::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 150%;
  display: block;
  background: linear-gradient(to bottom, black, transparent);
  z-index: -1;
  opacity: 0.6;
}

.swiper-controls {
  --colour: var(--black);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
@media (min-width: 768px) {
  .swiper-controls {
    gap: 20px;
  }
}
.swiper-controls:has(.swiper-pagination-lock) {
  display: none;
}
.swiper-controls .swiper-buttons {
  display: inline-flex;
  gap: 8px;
}
@media (min-width: 768px) {
  .swiper-controls .swiper-buttons {
    gap: clamp(8px, 12 / 1300 * var(--container-width), 12px);
  }
}
.swiper-controls .swiper-buttons:has(.swiper-button-prev.swiper-button-disabled):has(.swiper-button-next.swiper-button-disabled) {
  display: none;
}
.swiper-controls .swiper-buttons .swiper-button {
  --btn-text: var(--colour);
  --btn-bg: transparent;
  --btn-outline: var(--colour);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--colour);
}
.swiper-controls .swiper-buttons .swiper-button[disabled] {
  opacity: 0.7;
}
.swiper-controls .swiper-buttons .swiper-button-prev {
  scale: -1 1;
}
.swiper-controls .swiper-pagination {
  display: flex;
  gap: 8px;
}
@media (min-width: 768px) {
  .swiper-controls .swiper-pagination {
    gap: clamp(8px, 12 / 1300 * var(--container-width), 12px);
  }
}
.swiper-controls .swiper-pagination-bullet {
  width: 8px;
  aspect-ratio: 1;
  background-color: var(--colour);
  border-radius: 50%;
  opacity: 0.2;
  cursor: pointer;
}
.swiper-controls .swiper-pagination-bullet-active {
  opacity: 1;
}
.swiper-controls--white {
  --colour: var(--white);
}
.swiper-controls--white .swiper-button {
  --btn-hover-text: var(--orange) !important;
}

.timeline-section {
  --dot-size: 9px;
  background-color: var(--white);
  color: var(--black);
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .timeline-section {
    padding-block: clamp(40px, 160 / 1300 * var(--container-width), 160px);
    --dot-size: 11px;
  }
}
.timeline-section .timeline-section-inner {
  padding-top: 40px;
  display: flex;
  flex-direction: column;
  gap: 120px;
  position: relative;
}
@media (min-width: 768px) {
  .timeline-section .timeline-section-inner {
    gap: 50px;
    padding-block: 0;
  }
}
.timeline-section .timeline-line {
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background-color: var(--orange);
}
.timeline-section .timeline-line-mobile {
  left: 0;
}
@media (min-width: 768px) {
  .timeline-section .timeline-line-mobile {
    display: none;
  }
}
.timeline-section .timeline-line-desktop {
  display: none;
}
@media (min-width: 768px) {
  .timeline-section .timeline-line-desktop {
    display: block;
    left: 50%;
  }
}
.timeline-section .timeline-line-desktop::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: round(var(--dot-size) / -2, 1px);
  width: var(--dot-size);
  height: var(--dot-size);
  border: 1px solid var(--orange);
  border-radius: 50%;
  background-color: var(--white);
}
.timeline-section .timeline-line::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: round(var(--dot-size) / -2, 1px);
  width: var(--dot-size);
  height: var(--dot-size);
  border: 1px solid var(--orange);
  border-radius: 50%;
  background-color: var(--white);
}
.timeline-section .timeline-intro {
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
}
@media (min-width: 768px) {
  .timeline-section .timeline-intro {
    text-align: center;
    align-items: center;
    padding: 0;
  }
}
@media (min-width: 768px) {
  .timeline-section .timeline-intro h3 {
    max-width: 700px;
  }
}
.timeline-section .timeline-main {
  position: relative;
}
@media (min-width: 768px) {
  .timeline-section .timeline-main {
    padding-block: clamp(40px, 200 / 1300 * var(--container-width), 200px);
  }
}
@media (min-width: 768px) {
  .timeline-section .item-group {
    display: flex;
    flex-direction: row-reverse;
    min-height: 95vh;
    align-items: flex-start;
  }
}
.timeline-section .item {
  padding-top: 15px;
  padding-bottom: 25px;
  padding-left: 15px;
  position: relative;
}
@media (min-width: 768px) {
  .timeline-section .item {
    --timeline-inset: clamp(20px, calc((80 / 1300) * var(--container-width)), 80px);
    padding: 0;
    padding-block: clamp(10px, 25 / 1300 * var(--container-width), 25px);
    flex: 0 0 50%;
    max-height: 90vh;
    display: flex;
  }
  .timeline-section .item:nth-child(even) {
    padding-right: var(--timeline-inset);
    align-self: flex-end;
    margin-top: clamp(80px, 200 / 1300 * var(--container-width), 200px);
  }
  .timeline-section .item:nth-child(even) .item-inner {
    align-items: flex-start;
  }
  .timeline-section .item:nth-child(even) .item-line::before {
    left: unset;
    right: round(down, var(--dot-size) / -2, 1px);
  }
  .timeline-section .item:nth-child(even) .item-line:after {
    transform-origin: right;
  }
  .timeline-section .item:nth-child(odd) {
    padding-left: var(--timeline-inset);
  }
}
.timeline-section .item-line {
  --dot-scale: 1;
  --line-scale: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.timeline-section .item-line::before {
  content: "";
  display: block;
  position: absolute;
  top: round(var(--dot-size) / -2, 1px);
  left: round(var(--dot-size) / -2, 1px);
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: 50%;
  background-color: var(--orange);
  transform: scale(var(--dot-scale));
}
.timeline-section .item-line:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--orange);
  scale: var(--line-scale) 1;
  transform-origin: left;
}
.timeline-section .item-inner {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: flex-end;
  overflow: hidden;
}
@media (min-width: 768px) {
  .timeline-section .item-inner {
    gap: clamp(10px, 25 / 1300 * var(--container-width), 25px);
  }
}
.timeline-section .year {
  color: var(--orange);
  text-box: trim-both cap alphabetic;
}
.timeline-section .image-wrapper {
  width: 100%;
  position: relative;
  overflow: hidden;
  aspect-ratio: 355/190;
}
.timeline-section .image-wrapper.image-wrapper-desktop {
  display: none;
}
@media (min-width: 768px) {
  .timeline-section .image-wrapper.image-wrapper-desktop {
    display: block;
  }
}
.timeline-section .image-wrapper.image-wrapper-mobile {
  display: block;
}
@media (min-width: 768px) {
  .timeline-section .image-wrapper.image-wrapper-mobile {
    display: none;
  }
}
@media (min-width: 768px) {
  .timeline-section .image-wrapper {
    aspect-ratio: 575/545;
  }
}
.timeline-section .image-wrapper img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.timeline-section .timeline-end {
  padding-left: 20px;
  color: var(--orange);
  text-box: trim-both cap alphabetic;
}
@media (min-width: 768px) {
  .timeline-section .timeline-end {
    padding: 0;
    text-align: center;
    max-width: 10em;
    margin-inline: auto;
  }
}

body:has(.unit-modal.active) {
  overflow: hidden;
}

.availability-table {
  margin-top: 0px;
  padding-top: 30px;
  margin-bottom: 80px;
}
.availability-table .availability-table-inner .filters-wrap .filters {
  box-shadow: 0px 0px var(--Rounded-radius-M, 48px) 0px rgba(0, 0, 0, 0.2);
  justify-content: space-between;
  background-color: #ffffff;
  border-radius: 16px;
  padding: 36px 16px;
  position: relative;
  display: flex;
  width: 100%;
  z-index: 99;
  display: none;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider {
  flex-direction: column;
  display: flex;
  width: 100%;
  gap: 16px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .label {
  margin-top: 0px;
  display: inline-block;
  letter-spacing: 0.42px;
  text-transform: uppercase;
  font-size: 10px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .label {
    font-size: unset;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .filter-range-slider-wrap {
  gap: 8px;
  width: 100%;
  display: flex;
  padding: 20px 16px;
  border-radius: 8px;
  flex-direction: column;
  justify-content: space-between;
  background-color: var(--pale-grey);
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .filter-range-slider-wrap {
    gap: 30px;
    padding: 16px 24px;
    flex-direction: row;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .range-slider-flex {
  width: 100%;
  max-width: 100%;
  margin-top: 0px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .range-slider-flex {
    width: 370px;
    margin-top: 10px;
  }
}
@media (min-width: 992px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .range-slider-flex {
    width: 570px;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .range-slider-flex {
    width: 245px;
    margin-top: 12px;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider #range-indicators {
  text-align: center;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider #range-indicators {
    text-align: unset;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .range-indicators {
  gap: 8px;
  display: flex;
  justify-content: space-between;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .ui-slider-handle:first-of-type:before {
  position: relative; /*or absolute*/
  z-index: 100000; /*a number that's more than the modal box*/
  left: 6px;
  top: 2px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .ui-slider-handle:last-of-type:before {
  position: relative; /*or absolute*/
  z-index: 100000; /*a number that's more than the modal box*/
  left: 8px;
  top: 2px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-min,
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-max,
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-dash {
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0.4px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-min,
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-max,
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .slider-dash {
    font-size: 20px;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-corner-all,
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider .ui-corner-all {
  border-radius: 0;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider {
  border: 0;
  border-radius: 6px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-horizontal {
  height: 4px;
  background-color: #ffffff;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-vertical {
  height: 15em;
  width: 6px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider .ui-slider-handle {
  width: 20px;
  height: 20px;
  border: none;
  cursor: pointer;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider .ui-slider-handle {
    width: 22px;
    height: 22px;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-horizontal .ui-slider-handle {
  top: 50%;
  margin-top: -11px;
  background-color: #ffffff;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-vertical .ui-slider-handle {
  left: 50%;
  margin-left: -11px;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider .ui-slider-range {
  border: 0;
  border-radius: 6;
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 4px;
  background-color: var(--orange);
}
.availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider .size-slider.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 6px;
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filter-range-slider {
    width: 50%;
    flex-direction: row;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional {
  width: 100%;
  display: block;
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group-wrap:last-of-type {
  margin-top: 20px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group-wrap:last-of-type {
    margin-top: 0px;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group {
  gap: 16px;
  display: flex;
  flex-direction: column;
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .label {
  margin-top: 10px;
  display: inline-block;
  letter-spacing: 0.42px;
  text-transform: uppercase;
  font-size: 10px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .label {
    font-size: unset;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .filter-buttons {
  gap: 8px;
  display: flex;
  justify-content: space-between;
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .filter-buttons button {
  display: flex;
  cursor: pointer;
  font-weight: 500;
  transition: 0.25s all;
  letter-spacing: 0.42px;
  text-transform: uppercase;
  gap: 12px;
  border-radius: 72px;
  border: 1px solid var(--black);
  padding: 6px 12px;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
}
.availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .filter-buttons button.active, .availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .filter-buttons button:hover {
  background-color: var(--black);
  color: var(--white);
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group .filter-buttons button {
    min-height: 36px;
    padding: 8px 16px;
    flex-grow: unset;
  }
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional .filter-group {
    flex-direction: row;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .filters-wrap .filters .filters-additional {
    width: 50%;
    padding-left: 40px;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters .mobile-buttons {
  display: block;
  margin-top: 10px;
}
.availability-table .availability-table-inner .filters-wrap .filters .mobile-buttons .buttons {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.availability-table .availability-table-inner .filters-wrap .filters .mobile-buttons .buttons button.button--clear {
  padding-bottom: 0px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters .mobile-buttons {
    display: none;
  }
}
.availability-table .availability-table-inner .filters-wrap .filters.open {
  gap: 20px;
  z-index: 999;
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters.open {
    z-index: 99;
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filters {
    padding: 16px 24px;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .filters-wrap .filters {
    display: flex;
  }
}
.availability-table .availability-table-inner .filters-wrap .filter-button-mobile {
  left: 0;
  right: 0;
  top: 0px;
  width: 114px;
  z-index: 999;
  margin-left: auto;
  margin-right: auto;
  display: inline-flex;
  position: absolute;
  background-color: var(--white);
  box-shadow: 0px 0px var(--Rounded-radius-M, 20px) 0px rgba(0, 0, 0, 0.2);
}
.availability-table .availability-table-inner .filters-wrap .filter-button-mobile:hover {
  background-color: var(--black);
}
.availability-table .availability-table-inner .filters-wrap .filter-button-mobile.filters-open {
  top: 15px;
}
.availability-table .availability-table-inner .filters-wrap .filter-button-mobile.filters-open .filter-icon {
  transform: rotate(45deg);
}
.availability-table .availability-table-inner .filters-wrap .filter-button-mobile .filter-icon {
  transition: transform 0.3s ease;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .filters-wrap .filter-button-mobile {
    width: 135px;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .filters-wrap .filter-button-mobile {
    display: none;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table {
  z-index: 99;
  width: 100%;
  max-width: 100%;
  max-height: 225px;
  position: relative;
  border-radius: 8px;
  overflow: auto;
  margin: 0px 0px;
  padding-top: 0px;
  background-color: var(--white);
  box-shadow: 0px 0px var(--Rounded-radius-M, 48px) 0px rgba(0, 0, 0, 0.2);
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row {
  align-items: center;
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: flex-start;
  align-self: stretch;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-building {
  width: 19%;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-building {
    width: 16%;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-level {
  width: 14.5%;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-level {
    width: 12.5%;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-size {
  width: 16.66%;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-size {
    width: 18.66%;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-type {
  width: 17.66%;
  padding-right: 1em;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-type {
    width: 20.66%;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-availability {
  width: 22.66%;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-arrow {
  width: 9.5%;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-arrow svg {
  width: 14px;
  height: auto;
  float: right;
  margin-top: unset;
  margin-left: unset;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row .availability-col-arrow svg {
    width: 16px;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-header {
  font-weight: 500;
  font-size: 9px;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  color: var(--grey);
  padding: 12px 14px;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-header {
    font-size: 10px;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-header {
    padding: 24px 24px 12px 24px;
  }
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default {
  border-top: 1px solid var(--Colour-Pale-Gray, #eeeae8);
  transition: 0.25s all;
  padding: 8px 14px;
  font-size: 10px;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default:hover {
  background: rgba(252, 54, 13, 0.25) !important;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default.even {
  background: rgba(238, 234, 232, 0.25);
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default.odd {
  background: transparent;
}
.availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default a {
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  position: absolute;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table .availability-row.availability-default {
    font-size: unset;
    padding: 8px 24px;
  }
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table {
    max-height: 275px;
    border-radius: 16px;
  }
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .availability-table-wrap .availability-table {
    top: 31px;
    left: 0px;
    width: 500px;
    max-height: 700px;
    position: absolute;
  }
}
.availability-table .availability-table-inner .availability-map-wrap {
  display: block;
}
.availability-table .availability-table-inner .availability-map-desktop {
  display: none;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-map-desktop {
    display: block;
  }
}
.availability-table .availability-table-inner .availability-map-mobile {
  display: block;
}
@media (min-width: 768px) {
  .availability-table .availability-table-inner .availability-map-mobile {
    display: none;
  }
}
.availability-table .availability-table-inner .availability-map {
  position: relative;
}
.availability-table .availability-table-inner .availability-map img,
.availability-table .availability-table-inner .availability-map svg {
  position: relative;
  display: block;
  width: 100%;
}
.availability-table .availability-table-inner .availability-map img g.building-mobile, .availability-table .availability-table-inner .availability-map img g.building,
.availability-table .availability-table-inner .availability-map svg g.building-mobile,
.availability-table .availability-table-inner .availability-map svg g.building {
  position: cursor;
}
.availability-table .availability-table-inner .availability-map img g.building-mobile path,
.availability-table .availability-table-inner .availability-map img g.building-mobile polygon,
.availability-table .availability-table-inner .availability-map img g.building-mobile polyline, .availability-table .availability-table-inner .availability-map img g.building path,
.availability-table .availability-table-inner .availability-map img g.building polygon,
.availability-table .availability-table-inner .availability-map img g.building polyline,
.availability-table .availability-table-inner .availability-map svg g.building-mobile path,
.availability-table .availability-table-inner .availability-map svg g.building-mobile polygon,
.availability-table .availability-table-inner .availability-map svg g.building-mobile polyline,
.availability-table .availability-table-inner .availability-map svg g.building path,
.availability-table .availability-table-inner .availability-map svg g.building polygon,
.availability-table .availability-table-inner .availability-map svg g.building polyline {
  transition: 0.25s all;
}
.availability-table .availability-table-inner .availability-map img g.building-mobile.highlight#A1 path:first-of-type, .availability-table .availability-table-inner .availability-map img g.building.highlight#A1 path:first-of-type,
.availability-table .availability-table-inner .availability-map svg g.building-mobile.highlight#A1 path:first-of-type,
.availability-table .availability-table-inner .availability-map svg g.building.highlight#A1 path:first-of-type {
  fill: var(--orange);
  stroke: var(--orange);
}
.availability-table .availability-table-inner .availability-map img g.building-mobile.highlight path, .availability-table .availability-table-inner .availability-map img g.building.highlight path,
.availability-table .availability-table-inner .availability-map svg g.building-mobile.highlight path,
.availability-table .availability-table-inner .availability-map svg g.building.highlight path {
  fill: var(--white);
}
.availability-table .availability-table-inner .availability-map img g.building-mobile.highlight polygon,
.availability-table .availability-table-inner .availability-map img g.building-mobile.highlight polyline, .availability-table .availability-table-inner .availability-map img g.building.highlight polygon,
.availability-table .availability-table-inner .availability-map img g.building.highlight polyline,
.availability-table .availability-table-inner .availability-map svg g.building-mobile.highlight polygon,
.availability-table .availability-table-inner .availability-map svg g.building-mobile.highlight polyline,
.availability-table .availability-table-inner .availability-map svg g.building.highlight polygon,
.availability-table .availability-table-inner .availability-map svg g.building.highlight polyline {
  fill: var(--orange);
  stroke: var(--orange);
}
@media (min-width: 1300px) {
  .availability-table .availability-table-inner .availability-map img,
  .availability-table .availability-table-inner .availability-map svg {
    margin-top: -15px;
    margin-left: 160px;
  }
}
@media (min-width: 768px) {
  .availability-table {
    margin-block: 50px;
    padding-top: 0px;
  }
}

.agents-section {
  background-color: var(--black);
  padding-top: 25px;
}
@media (min-width: 768px) {
  .agents-section {
    padding-top: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
.agents-section--white {
  padding: 0 !important;
  margin-block: 40px;
  background-color: inherit;
}
@media (min-width: 768px) {
  .agents-section--white {
    padding-top: clamp(40px, 50 / 1300 * var(--container-width), 50px);
  }
}
.agents-section--white .agents-box {
  background-color: var(--white);
  color: var(--black);
}
.agents-section .agents-heading h4 {
  color: #ffffff;
  margin: 0 0 25px 0;
  font-size: var(--font-size-h4);
}
@media (min-width: 768px) {
  .agents-section .agents-heading h4 {
    margin: 0 0 30px 0;
  }
}

.agent-boxes {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (min-width: 768px) {
  .agent-boxes {
    gap: var(--sizing-m);
  }
}

.agents-box {
  border-radius: var(--corner-radius-r);
  background-color: color-mix(in srgb, var(--dark-grey) 75%, transparent 25%);
  overflow: hidden;
  color: var(--white);
}
.agents-box .agents-box-top {
  padding: 15px;
}
@media (min-width: 768px) {
  .agents-box .agents-box-top {
    padding: clamp(15px, 25 / 1300 * var(--container-width), 25px);
  }
}
.agents-box .agent-block {
  padding: 24px;
  border-top: 1px solid var(--orange);
  display: flex;
  flex-direction: column;
  gap: 35px;
}
.agents-box .agent-block:first-of-type {
  border-top: 0px;
}
@media (min-width: 768px) {
  .agents-box .agent-block {
    flex-direction: row;
    padding: clamp(20px, 40 / 1300 * var(--container-width), 40px);
    padding-bottom: clamp(30px, 80 / 1300 * var(--container-width), 80px);
  }
}
@media (min-width: 768px) {
  .agents-box .agent-logo {
    flex: 1;
  }
}
.agents-box .agent-logo img {
  height: 40px;
  width: auto;
}
@media (min-width: 768px) {
  .agents-box .agent-logo img {
    height: clamp(40px, 48 / 1300 * var(--container-width), 48px);
  }
}
.agents-box .agents {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (min-width: 768px) {
  .agents-box .agents {
    flex: 1;
    gap: clamp(15px, 50 / 1300 * var(--container-width), 50px);
  }
}
@media (min-width: 1300px) {
  .agents-box .agents {
    flex: 2;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.agents-box .agent {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}
.agents-box .agent a {
  color: inherit;
  display: block;
}
.agents-box .agent a.button {
  display: flex;
  margin: 15px 0px 0px 0px;
}
.agents-box .agent a.button:hover {
  color: var(--orange);
}
.agents-box .agent .name {
  color: var(--orange);
}

.unit-banner {
  min-height: calc(100svh - var(--header-height));
  position: relative;
  display: flex;
}
.unit-banner .banner-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.unit-banner .banner-bg::after {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  background: linear-gradient(to top, var(--black), transparent 80%);
  position: relative;
  opacity: 0.4;
}
.unit-banner .banner-content {
  color: var(--white);
  display: flex;
  align-items: flex-end;
  padding-block: 30px;
  width: 100%;
}
@media (min-width: 768px) {
  .unit-banner .banner-content {
    padding-block: clamp(30px, 70 / 1300 * var(--container-width), 70px);
    padding-bottom: clamp(50px, 120 / 1300 * var(--container-width), 120px);
  }
}
.unit-banner .banner-content-inner {
  padding-inline: 10px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  filter: drop-shadow(0px 0px 50px rgb(0, 0, 0));
}
@media (min-width: 768px) {
  .unit-banner .banner-content-inner {
    padding: 0;
  }
}
.unit-banner + * {
  border-top-left-radius: var(--corner-radius-l);
  border-top-right-radius: var(--corner-radius-l);
  margin-top: calc(-1 * var(--corner-radius-l));
  position: relative;
}

.unit-intro {
  margin-top: 40px;
  margin-bottom: 80px;
}
@media (min-width: 768px) {
  .unit-intro {
    margin-top: clamp(40px, 80 / 1300 * var(--container-width), 80px);
  }
}
.unit-intro .unit-intro-inner {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 768px) {
  .unit-intro .unit-intro-inner {
    flex-direction: row;
    gap: 0;
  }
  .unit-intro .unit-intro-inner > * {
    flex: 0 0 50%;
  }
}
.unit-intro .return-block {
  display: none;
}
@media (min-width: 768px) {
  .unit-intro .return-block {
    display: block;
  }
}
.unit-intro .return-block .button {
  --btn-text: var(--orange);
  --btn-bg: transparent;
  --btn-outline: var(--orange);
  --btn-hover-text: var(--white);
  --btn-hover-bg: var(--orange);
}
.unit-details {
  display: flex;
  flex-direction: column;
  gap: 40px;
  border-top: 1px solid var(--orange);
  padding-top: 10px;
  align-items: flex-start;
}
.unit-details .details-grid {
  display: grid;
  width: -moz-fit-content;
  width: fit-content;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 50px;
       column-gap: 50px;
  row-gap: 4px;
}
.unit-details .detail {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: subgrid;
}
.unit-details .detail-key {
  color: var(--orange);
}

.unit-carousel {
  margin-block: 80px;
  overflow: hidden;
}

.map-section {
  margin-block: 40px;
}
@media (min-width: 768px) {
  .map-section {
    margin-top: clamp(40px, 70 / 1300 * var(--container-width), 70px);
    margin-bottom: clamp(40px, 160 / 1300 * var(--container-width), 160px);
  }
}
.map-section .map-wrapper {
  border-radius: var(--corner-radius-r);
  position: relative;
  overflow: hidden;
}
.map-section .map-box {
  top: 16px;
  left: 16px;
  width: 100%;
  position: absolute;
  width: calc(100% - 30px);
}
.map-section .map-box .map-box-inner {
  width: 400px;
  max-width: 100%;
  padding: var(--Sizing-SR, 16px);
  border-radius: var(--Rounded-radius-S, 8px);
  background: var(--Colour-White, #fff);
  box-shadow: 0px 0px var(--font-size-H3, 48px) 0px rgba(0, 0, 0, 0.2);
}
.map-section .map-box .map-box-inner h4 {
  margin: 0px 0px 20px 0px;
}
@media (min-width: 768px) {
  .map-section .map-box .map-box-inner h4 {
    margin: 0px 0px 25px 0px;
  }
}
.map-section .map-box .map-box-inner .button-wrap a {
  margin: 25px 0px 0px 0px;
}
@media (min-width: 768px) {
  .map-section .map-box .map-box-inner .button-wrap a {
    margin: 35px 0px 0px 0px;
  }
}
@media (min-width: 768px) {
  .map-section .map-box .map-box-inner {
    padding: var(--Sizing-SR, 24px);
    border-radius: var(--Rounded-radius-S, 16px);
  }
}
@media (min-width: 768px) {
  .map-section .map-box {
    top: 24px;
    left: 24px;
    width: 350px;
  }
}
@media (min-width: 992px) {
  .map-section .map-box {
    width: unset;
  }
}
.map-section .map-intro {
  text-align: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 35px;
  gap: 10px;
}
@media (min-width: 768px) {
  .map-section .map-intro {
    margin-bottom: 50px;
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.map-section .map {
  width: 100%;
  height: 600px;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .map-section .map {
    height: 500px;
    aspect-ratio: 16/10;
  }
}
@media (min-width: 992px) {
  .map-section .map {
    height: unset;
  }
}
.map-section .map-marker {
  translate: 0 50%;
  font-weight: 500;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  padding: 5px;
}
.map-section .amenity-marker-info {
  display: none;
}
.map-section .amenity-map-marker {
  width: 25px;
  aspect-ratio: 1;
  padding: 5px;
  border-radius: 50%;
  background-color: var(--white);
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  translate: 0 50%;
}
.map-section .amenity-map-marker img {
  width: 100%;
  height: auto;
}
.map-section--location .location-marker {
  display: none;
}
.map-section--location .marker-content {
  width: 6px;
  height: 6px;
  padding: 5px;
  border-radius: 50%;
  background-color: var(--black);
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  translate: 0 50%;
  position: relative;
  color: var(--white);
  font-weight: 500;
}
.map-section--location .marker-content .label {
  position: absolute;
  bottom: calc(100% + 5px);
  left: 50%;
  translate: -50% 0;
  text-align: center;
  white-space: nowrap;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: 5px;
  background-color: var(--white);
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.2s;
  color: var(--black);
}

.quick-links {
  margin-block: var(--sizing-l);
}
.quick-links .quick-links-intro {
  text-align: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 35px;
  gap: 10px;
}
.quick-links .quick-links-intro .h3 br {
  display: block;
}
@media (min-width: 768px) {
  .quick-links .quick-links-intro .h3 br {
    display: none;
  }
}
@media (min-width: 768px) {
  .quick-links .quick-links-intro {
    margin-bottom: 50px;
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.quick-links .quick-links-boxes {
  display: flex;
  flex-wrap: wrap;
  margin: 0px -12px;
  justify-content: center;
}
.quick-links .quick-links-boxes .quick-links-box-wrap {
  width: 100%;
  padding: 0px 12px;
  margin-bottom: 16px;
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box {
  background-color: #ffffff;
  border-radius: 8px;
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner {
  color: #ffffff;
  position: relative;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
  background-size: cover !important;
  background-position: center center !important;
  aspect-ratio: 415/210;
  width: 100%;
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner .h5 {
  font-family: var(--font-family-mono);
  font-size: var(--font-size-body);
  text-transform: uppercase;
  position: absolute;
  font-weight: 500;
  color: #ffffff;
  left: 20px;
  top: 20px;
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner .h5 {
    left: 24px;
    top: 24px;
  }
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner .h5:before {
  content: "⬤";
  color: var(--orange);
  margin-right: 0.6em;
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner .h4 {
  left: 20px;
  bottom: 20px;
  position: absolute;
  padding-right: 24px;
  font-size: var(--font-size-h4);
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner .h4 {
    left: 24px;
    bottom: 24px;
  }
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-banner {
    border-top-left-radius: var(--corner-radius-r);
    border-top-right-radius: var(--corner-radius-r);
  }
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-about {
  padding: 20px 20px;
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-about .description {
  margin-bottom: 50px;
  color: var(--text-dark);
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-about .description {
    min-height: 95px;
    margin-bottom: 0px;
  }
}
.quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-about .button-wrap a.button {
  margin: 25px 0 0 0;
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box .quick-links-box-about {
    padding: 25px 25px;
  }
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap .quick-links-box {
    border-radius: var(--corner-radius-s);
  }
}
.quick-links .quick-links-boxes .quick-links-box-wrap:last-of-type {
  margin-bottom: 0px;
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap:last-of-type {
    margin-bottom: 24px;
  }
}
@media (min-width: 768px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap {
    width: 50%;
    margin-bottom: 24px;
  }
}
@media (min-width: 1300px) {
  .quick-links .quick-links-boxes .quick-links-box-wrap {
    width: 33.33%;
  }
}
.featured-image .featured-image-wrap .image {
  width: 100%;
  position: relative;
  border-radius: 8px;
  background-size: cover !important;
  background-position: center center !important;
  aspect-ratio: 360/250;
}
.featured-image .featured-image-wrap .image .h5 {
  font-family: var(--font-family-mono);
  font-size: var(--font-size-body);
  text-transform: uppercase;
  position: absolute;
  font-weight: 500;
  color: #ffffff;
  left: 16px;
  top: 16px;
}
@media (min-width: 768px) {
  .featured-image .featured-image-wrap .image .h5 {
    left: 24px;
    top: 24px;
  }
}
.featured-image .featured-image-wrap .image .h5:before {
  content: "⬤";
  color: var(--orange);
  margin-right: 0.6em;
}
@media (min-width: 768px) {
  .featured-image .featured-image-wrap .image {
    aspect-ratio: 1300/740;
    border-radius: var(--corner-radius-r);
  }
}

.key-locations {
  margin-block: var(--sizing-l);
}
.key-locations .key-locations-intro {
  text-align: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 35px;
  gap: 10px;
}
@media (min-width: 768px) {
  .key-locations .key-locations-intro {
    margin-bottom: 50px;
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.key-locations .key-locations-boxes {
  display: grid;
  gap: 16px;
  width: 100%;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box {
  border-radius: 8px;
  background-color: #ffffff;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .heading h4 {
  color: var(--orange);
  margin: 0px 0px 16px 0px;
  font-size: var(--font-size-h4);
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .heading h4 {
    margin: 0px 0px 20px 0px;
  }
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .description {
  font-size: var(--font-size-h5);
  font-family: var(--font-family-sansserif);
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .description {
    width: 350px;
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .description {
    width: unset;
    min-height: 110px;
  }
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap {
  display: flex;
  justify-content: flex-end;
  margin: 20px 0px 0px 0px;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap img,
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap svg {
  max-width: 120px;
  display: block;
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap img,
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap svg {
    max-width: 150px;
  }
}
@media (min-width: 992px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap img,
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap svg {
    max-width: 120px;
  }
}
@media (min-width: 1300px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap img,
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap svg {
    max-width: unset;
  }
}
@media (min-width: 992px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap {
    margin: 30px 0px 0px 0px;
  }
}
@media (min-width: 1300px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .icon-wrap {
    margin: 50px 0px 0px 0px;
  }
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-top: 1px solid var(--orange);
  align-items: stretch;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  text-transform: uppercase;
  justify-content: space-between;
  border-bottom: 1px solid var(--pale-grey);
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark:last-of-type {
  border-bottom: 0px;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row {
  justify-content: space-between;
  padding: 20px 20px;
  display: flex;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row .landmark-col {
  width: 50%;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row .landmark-col.landmark-name {
  position: relative;
  color: var(--orange);
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row .landmark-col.landmark-name .name {
  font-weight: 500;
  padding-left: 25px;
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row .landmark-col.landmark-name .name:before {
  content: "⬤";
  color: var(--orange);
  margin-right: 0.6em;
  position: absolute;
  left: 0px;
  top: -1px;
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks .landmark .row {
    padding: 24px 24px;
  }
}
@media (min-width: 992px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .landmarks {
    min-height: 523px;
  }
}
.key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .key-locations-box-padded {
  padding: 20px 20px 0px 20px;
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box .key-locations-box-padded {
    padding: 24px 24px 0px 24px;
  }
}
@media (min-width: 768px) {
  .key-locations .key-locations-boxes .key-locations-box-wrap .key-locations-box {
    border-radius: var(--corner-radius-r);
  }
}
@media (min-width: 992px) {
  .key-locations .key-locations-boxes {
    grid-template-columns: repeat(3, 1fr);
  }
}

.landmarks-map {
  margin-block: var(--sizing-l);
  margin-top: 0px;
}
.landmarks-map .landmarks-map-wrap {
  container-name: map;
  container-type: inline-size;
  position: relative;
}
.landmarks-map .landmarks-map-wrap img,
.landmarks-map .landmarks-map-wrap svg {
  display: block;
  border-radius: 8px;
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-wrap img,
  .landmarks-map .landmarks-map-wrap svg {
    border-radius: var(--corner-radius-r);
  }
}
.landmarks-map .landmarks-map-wrap .map-label {
  color: #ffffff;
  font-weight: 500;
  position: absolute;
  text-transform: uppercase;
  left: 16px;
  top: 16px;
}
.landmarks-map .landmarks-map-wrap .map-label:before {
  content: "⬤";
  color: var(--orange);
  margin-right: 0.6em;
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-wrap .map-label {
    left: 24px;
    top: 24px;
  }
}
.landmarks-map .landmarks-map-wrap .map-zoom {
  right: 12px;
  bottom: 12px;
  display: block;
  position: absolute;
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-wrap .map-zoom {
    display: none;
  }
}
.landmarks-map .landmarks-map-wrap .map-pin {
  --height: max(20px, 2.7cqw);
  position: absolute;
  left: calc(var(--x, 0) * 1%);
  top: calc(var(--y, 0) * 1%);
  translate: -50% -50%;
  font-size: max(12px, 1.5cqw);
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-colour=white] {
  --colour: var(--white);
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-colour=orange] {
  --colour: var(--orange);
  color: var(--white);
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-colour=black] {
  --colour: var(--black);
  color: var(--white);
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-type=pin] {
  transform: translateY(calc(var(--height) * -0.5));
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-type=pin]:hover .pin-number::before {
  clip-path: polygon(50% 0%, 0% 0, 100% 0);
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-type=pin]:before {
  content: "";
  display: block;
  width: 100%;
  height: calc(var(--height) / 1.5);
  background-color: var(--colour);
  position: absolute;
  top: 60%;
  left: 50%;
  translate: -50% 0;
  width: var(--height);
  z-index: -1;
  clip-path: polygon(50% 100%, 0% 0, 100% 0);
  transition: clip-path 0.3s;
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-type=arrow-right] {
  left: unset;
  right: calc(100% - var(--x) * 1%);
  translate: calc(var(--height) * 0.5) -50%;
  display: flex;
  align-items: center;
}
.landmarks-map .landmarks-map-wrap .map-pin[data-pin-type=arrow-right]::after {
  content: "";
  display: block;
  background-image: url("../../img/icons/arrow-right-black-map.svg");
  width: 27px;
  height: 14px;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-main {
  display: flex;
  text-transform: uppercase;
  font-weight: 500;
  height: var(--height);
  align-items: center;
  background-color: var(--colour);
  border-radius: 50px;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-main:hover .pin-label {
  width: auto;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-number {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  border-radius: 50%;
  height: 100%;
  width: var(--height);
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-number span {
  text-box: trim-both cap alphabetic;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-label {
  white-space: nowrap;
  overflow: hidden;
  display: flex;
  width: 0;
  transition: width 0.3s;
  transition-behavior: allow-discrete;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-label span {
  text-box: trim-both cap alphabetic;
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-label:before {
  content: "";
  display: block;
  width: calc(var(--height) / 4);
}
.landmarks-map .landmarks-map-wrap .map-pin .pin-label:after {
  content: "";
  display: block;
  width: calc(var(--height) / 2);
}
.landmarks-map .landmarks-map-key {
  margin: 20px 0px 0px 0px;
}
.landmarks-map .landmarks-map-key ul {
  gap: 8px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
}
.landmarks-map .landmarks-map-key ul li {
  padding: 0px 0px;
  align-items: center;
  display: flex;
  gap: 8px;
}
.landmarks-map .landmarks-map-key ul li span.number {
  display: flex;
  width: 24px;
  height: 24px;
  border-radius: 100px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  aspect-ratio: 1/1;
  border: 1px solid #000000;
  background: #ffffff;
}
.landmarks-map .landmarks-map-key ul li span.number.bg-orange {
  color: #ffffff;
  border-color: var(--orange);
  background-color: var(--orange);
}
.landmarks-map .landmarks-map-key ul li span.number.bg-black {
  color: #ffffff;
  border-color: var(--black);
  background-color: var(--black);
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-key ul li span.number {
    width: 28px;
    height: 28px;
  }
}
.landmarks-map .landmarks-map-key ul li span.label {
  gap: 5px;
  display: flex;
  align-items: center;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-key ul li {
    padding: 5px 25px;
  }
}
@media (min-width: 768px) {
  .landmarks-map .landmarks-map-key ul {
    gap: 0px;
    flex-direction: row;
  }
}

.offerings {
  margin-block: 80px;
}
@media (min-width: 768px) {
  .offerings {
    margin-block: clamp(80px, 160 / 1300 * var(--container-width), 160px);
  }
}
.offerings .offerings-inner {
  display: flex;
  flex-direction: column;
  gap: 35px;
}
@media (min-width: 768px) {
  .offerings .offerings-inner {
    gap: clamp(20px, 50 / 1300 * var(--container-width), 50px);
  }
}
.offerings .offerings-intro {
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 768px) {
  .offerings .offerings-intro {
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.offerings .segment-heading {
  padding: 20px;
  border-bottom: 1px solid var(--orange);
}
@media (min-width: 768px) {
  .offerings .segment-heading {
    padding: clamp(20px, 25 / 1300 * var(--container-width), 25px);
  }
}
.offerings .icons-box {
  display: flex;
  flex-direction: column;
  background-color: var(--white);
  border-radius: var(--corner-radius-r);
}
.offerings .offerings-segment {
  display: flex;
  flex-direction: column;
  background-color: var(--white);
  border-radius: var(--corner-radius-r);
}
.offerings .offerings-segment:not(:first-of-type) {
  border-top: 1px solid var(--orange);
}
.offerings .offerings-heading {
  padding: 20px;
}
@media (min-width: 768px) {
  .offerings .offerings-heading {
    padding: clamp(20px, 25 / 1300 * var(--container-width), 25px);
  }
}
.offerings .offerings-grid {
  width: 100%;
  display: flex;
  margin: 0px 0px;
  padding: 0px 0px;
  flex-direction: column;
}
@media (min-width: 992px) {
  .offerings .offerings-grid {
    flex-direction: row;
  }
}
.offerings .offering-item {
  width: 100%;
  padding: 24px 24px;
  border-bottom: 1px solid var(--orange);
}
.offerings .offering-item .heading {
  text-align: center;
}
.offerings .offering-item .heading h4 {
  color: var(--orange);
  margin: 0px 0px 24px 0px;
  font-size: var(--font-size-h4);
}
@media (min-width: 992px) {
  .offerings .offering-item .heading h4 {
    margin: 0px 0px 30px 0px;
  }
}
.offerings .offering-item:last-of-type {
  border-right: 0px;
  border-bottom: 0px;
}
@media (min-width: 992px) {
  .offerings .offering-item {
    width: 50%;
    border-bottom: 0px;
    border-right: 1px solid var(--orange);
  }
}
@media (min-width: 1300px) {
  .offerings .offering-item {
    width: 25%;
  }
}
.offerings .icon-item {
  display: flex;
  gap: 10px;
  align-items: center;
}
@media (min-width: 992px) {
  .offerings .icon-item {
    gap: clamp(10px, 15 / 1300 * var(--container-width), 15px);
  }
}
.offerings .icon-wrapper {
  display: flex;
  justify-content: center;
}
.offerings .icon-wrapper svg,
.offerings .icon-wrapper img {
  height: auto;
  width: 120px;
  display: block;
}
@media (min-width: 992px) {
  .offerings .icon-wrapper svg,
  .offerings .icon-wrapper img {
    width: 100%;
    max-width: 140px;
  }
}

.unit-modal {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  overflow: auto;
  position: fixed;
  z-index: 999999;
  background-color: rgba(0, 0, 0, 0.5);
}
.unit-modal .unit-modal-wrap {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 600px;
  max-width: 100%;
  max-height: 100%;
  overflow-y: auto;
  padding: 24px 24px;
  background-color: #ffffff;
  border-radius: 16px;
  opacity: 0;
  transition: opacity 0.5s ease;
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-close {
  display: flex;
  margin: 0px 0px 0px 0px;
  justify-content: flex-end;
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap .unit-modal-inner .modal-close {
    margin: 0px 0px 150px 0px;
  }
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-header h4 {
  margin: 0px 0px 35px 0px;
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-header h4 {
    margin: 0px 0px 45px 0px;
  }
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details {
  margin: 0px 0px 35px 0px;
  padding: 16px 0px 0px 0px;
  border-top: 1px solid var(--orange);
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details .details {
  gap: 11px;
  display: flex;
  flex-direction: column;
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details .details .detail {
  text-transform: uppercase;
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details .details .detail .row {
  display: flex;
  justify-content: flex-start;
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details .details .detail .row .label {
  width: 150px;
  max-width: 100%;
  font-weight: 500;
  color: var(--orange);
  letter-spacing: 0.42px;
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-content-details {
    margin: 0px 0px 65px 0px;
  }
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-body {
  margin: 0px 0px 30px 0px;
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-body {
    margin: 0px 0px 50px 0px;
  }
}
.unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-buttons .buttons {
  gap: 16px;
  display: flex;
  justify-content: space-between;
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap .unit-modal-inner .modal-content .modal-buttons .buttons {
    justify-content: unset;
  }
}
@media (min-width: 1300px) {
  .unit-modal .unit-modal-wrap {
    max-height: 85%;
    padding: 48px 48px;
    border-radius: 24px;
  }
}
.unit-modal.active .unit-modal-wrap {
  opacity: 1;
}

.static-map-section {
  margin-block: 40px;
}
@media (min-width: 768px) {
  .static-map-section {
    margin-block: clamp(40px, 160 / 1300 * var(--container-width), 80px);
  }
}
.static-map-section .static-map-inner {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 768px) {
  .static-map-section .static-map-inner {
    gap: clamp(10px, 24 / 1300 * var(--container-width), 24px);
  }
}
.static-map-section .static-map {
  width: 100%;
  border-radius: var(--corner-radius-r);
  overflow: hidden;
}
.static-map-section .map-key {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 10px;
}
@media (min-width: 768px) {
  .static-map-section .map-key {
    -moz-column-gap: clamp(20px, 50 / 1300 * var(--container-width), 50px);
         column-gap: clamp(20px, 50 / 1300 * var(--container-width), 50px);
    row-gap: clamp(10px, 16 / 1300 * var(--container-width), 16px);
  }
}
.static-map-section .key-item {
  display: flex;
  gap: 8px;
  align-items: center;
}
.static-map-section .key-icon {
  width: 24px;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background-color: var(--icon-bg);
  color: var(--icon-text);
  border: 1px solid var(--icon-border);
}

.stats-block-section {
  margin-block: 40px;
}
@media (min-width: 768px) {
  .stats-block-section {
    margin-block: clamp(40px, 160 / 1300 * var(--container-width), 160px);
  }
}
.stats-block-section .stats-block {
  background-color: var(--white);
  border-radius: var(--corner-radius-r);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.stats-block-section .block-heading {
  padding: 20px;
  border-bottom: 1px solid var(--orange);
}
@media (min-width: 768px) {
  .stats-block-section .block-heading {
    padding: clamp(20px, 25 / 1300 * var(--container-width), 25px);
  }
}
.stats-block-section .stats {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  background-color: var(--orange);
  gap: 1px;
  border-radius: var(--corner-radius-r);
}
@media (min-width: 768px) {
  .stats-block-section .stats {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1300px) {
  .stats-block-section .stats {
    grid-template-columns: repeat(3, 1fr);
  }
}
.stats-block-section .stat-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-block: 30px;
  padding-inline: 15px;
  align-items: center;
  background-color: var(--white);
}
@media (min-width: 768px) {
  .stats-block-section .stat-item {
    padding-block: clamp(30px, 45 / 1300 * var(--container-width), 45px);
  }
}
.stats-block-section .stat-item .item-stat {
  color: var(--orange);
}
