/* =========================
   NEUE HAAS GROTESK
   ========================= */

@font-face {
  font-family: 'NHaasGrotDisp55Roman';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-55Roman.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-55Roman.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'NHaasGrotDisp65';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-65Medium.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-65Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'NeueHaasGrotDispLight';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-45Light.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotDisp-45Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* Haas Text (used separately from Display) */
@font-face {
  font-family: 'NHaaGrot55Roman';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotText-55Roman.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HaasGrotText-55Roman.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* =========================
   HELVETICA NEUE
   ========================= */

@font-face {
  font-family: 'HelveticaNeueThin';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Thin.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'HelveticaNeueLight';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'HelveticaNeueRoman';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'HelveticaNeueMedium';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Medium.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

/* Legacy alias (kept because you reference it) */
@font-face {
  font-family: 'HelveticaNeueLT';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

/* =========================
   SF PRO DISPLAY
   ========================= */

@font-face {
  font-family: 'SFProDisplay';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Regular.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'SFProDisplayMedium';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Medium.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'SFProDisplaySemibold';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Semibold.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/SFProDisplay-Semibold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Helvetica Neue';
  src:
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}


@font-face {
    font-family: 'Helvetica Neue Medium';
    src: url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Medium.woff2') format('woff2'),
        url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue Roman';
    src: url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff2') format('woff2'),
        url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Roman.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue Thin';
    src: url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Thin.woff2') format('woff2'),
        url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Thin.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Helvetica Neue Light';
    src: url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff2') format('woff2'),
        url('/wp-content/themes/gpi-companies/dist/font/HelveticaNeue-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}




/* =========================
   PPE (EDITORIAL / DISPLAY)
   ========================= */

@font-face {
  font-family: 'PPE';
  src:
    url('/wp-content/themes/gpi-companies/dist/fonts/PPEditorialNew-LightItalic_6945f41a.woff2') format('woff2'),
    url('/wp-content/themes/gpi-companies/dist/fonts/PPEditorialNew-LightItalic_0ab07b7f.woff') format('woff');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}



/* =========================
   INTER
   ========================= */


/* inter-100 - latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-100.woff2') format('woff2'); 
}
/* inter-200 - latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-200.woff2') format('woff2'); 
}
/* inter-300 - latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-300.woff2') format('woff2'); 
}
/* inter-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-regular.woff2') format('woff2'); 
}
/* inter-500 */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-500.woff2') format('woff2'); 
}
/* inter-600  */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-600.woff2') format('woff2'); 
}
/* inter-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-700.woff2') format('woff2'); 
}
/* inter-800 - latin */
@font-face {
  font-display: swap;
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url('/wp-content/themes/gpi-companies/dist/font/inter-v20-latin-800.woff2') format('woff2'); 
}


:root {

  /* =========================
     COLORS
     ========================= */

  --color-black: #000000;
  --color-white: #ffffff;

  --color-text-primary: #000000;
  --color-text-secondary: #333333;
  --color-text-muted: #666666;

  --color-bg-primary: #ffffff;
  --color-bg-secondary: #f6f6f6;
  --color-bg-inverse: #000000;

  --color-border-light: rgba(0, 0, 0, 0.12);
  --color-border-dark: rgba(255, 255, 255, 0.18);

  --color-accent-primary: #000000;
  --color-accent-secondary: #444444;


  /* =========================
     FONT FAMILIES
     ========================= */

  --font-inter: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;

  --font-haas-roman: 'NHaasGrotDisp55Roman', 'NHaaGrot55Roman', Arial, sans-serif;
  --font-haas-medium: 'NHaasGrotDisp65', Arial, sans-serif;
  --font-haas-light: 'NeueHaasGrotDispLight', Arial, sans-serif;
  
  --font-helvetica-roman: 'Helvetica Neue Roman','HelveticaNeueRoman', Arial, sans-serif;
  --font-helvetica-neue:  'Helvetica Neue Roman','Helvetica Neue Light', Helvetica, Arial, sans-serif;
  --font-helvetica-thin: 'HelveticaNeueThin','Helvetica Neue Thin' Arial, sans-serif;
  --font-helvetica-medium: 'HelveticaNeueMedium', 'Helvetica Neue Medium', Arial, sans-serif;
  --font-helvetica-light: 'HelveticaNeueLight', Arial, sans-serif;
  --font-helvetica-lt: 'Helvetica Neue Light', Arial, sans-serif;

  --font-sf-regular: 'SFProDisplay', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-sf-medium: 'SFProDisplayMedium', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-sf-semibold: 'SFProDisplaySemibold', -apple-system, BlinkMacSystemFont, sans-serif;


  /* =========================
     FONT WEIGHTS
     ========================= */

  --weight-thin: 200;
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;


  /* =========================
     FONT SIZES (fluid)
     ========================= */

  --fs-xxs: clamp(0.7rem, 0.65rem + 0.2vw, 0.75rem);
  --fs-xs: clamp(0.8rem, 0.75rem + 0.25vw, 0.9rem);
  --fs-sm: clamp(0.9rem, 0.85rem + 0.3vw, 1rem);
  --fs-base: clamp(1rem, 0.95rem + 0.35vw, 1.125rem);
  --fs-md: clamp(1.15rem, 1.05rem + 0.45vw, 1.35rem);
  --fs-lg: clamp(1.4rem, 1.25rem + 0.75vw, 1.75rem);
  --fs-xl: clamp(1.75rem, 1.5rem + 1vw, 2.25rem);
  --fs-xxl: clamp(2.25rem, 1.75rem + 1.75vw, 3rem);
  --fs-display: clamp(3rem, 2.25rem + 3vw, 4.5rem);


  /* =========================
     LINE HEIGHTS
     ========================= */

  --lh-tight: 1.05;
  --lh-snug: 1.15;
  --lh-normal: 1.35;
  --lh-relaxed: 1.6;


  /* =========================
     LETTER SPACING
     ========================= */

  --ls-tight: -0.015em;
  --ls-normal: 0;
  --ls-wide: 0.03em;
  --ls-wider: 0.08em;

}



* {
    padding: 0;
    box-sizing: border-box;
}

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

html {
    font-weight: 300;
    font-style: normal;
    line-height: 1.15;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    width: 100%;
}

body {
    color: #000;
	font-family:var(--font-helvetica-light);
}


body,
h1,
h2,
h3,
h4,
h5,
h6,
html,
p {
    font-weight: 300;
}

h1, h2, h3, h4, h5 {
	font-family:var(--font-helvetica-neue);
}


h1 {
    font-size: 2.5rem;
    font-size: clamp(1.75rem, 5vmin, 2.5rem);
    text-transform: capitalize;

}

h2 {
    font-size: 2rem;
    font-size: clamp(2rem, 4vmin, 2rem);
    text-transform: capitalize;
}

h3 {
    font-size: 1.75rem;
    font-size: clamp(1.2rem, 3.5vmin, 1.75rem);
    text-transform: capitalize;
}

h4 {
    font-size: 1.5rem;
    font-size: clamp(1.1rem, 3vmin, 1.5rem);
    text-transform: capitalize;
}

h5 {
    font-size: 1.2rem;
    font-size: clamp(1rem, 2.5vmin, 1.2rem);
    text-transform: capitalize;
}

p {
    letter-spacing: .25px;
    font-size: 21px;
    line-height: 1.31;
    padding-bottom: 20px;
    font-family:var(--font-helvetica-light);
}



a {
    color: #000;
}

.box-button:after,
.box-button:before {
    transition: .5s cubic-bezier(.19, 1, .22, 1);
    content: ""
}

.drawer.--is-open .drawer__content-inner,
.flickity-page-dots .dot.is-selected,
img.lazyfade.lazyloaded,
svg.lazyfade.lazyloaded {
    opacity: 1
}

.btn-primary-dark-arrow,
.featured-item,
a,
a:hover,
ins {
    text-decoration: none
}

.investment-spotlight-container .grid-wrapper .tall,
.news-card--big {
    grid-row: span 2
}


.u-reveal-default {
    opacity: 0;
    transition: opacity 1.022s ease-in-out
}

.u-reveal-default.--is-visible {
    opacity: 1;
    transform: none
}

.video-hero-home h1,
.video-hero-home h2 {
    font-weight: 300;
    transform: translateY(20px);
    transition: opacity .6s, transform .6s;
    line-height: 1;
    opacity: 0;
    

}

.video-hero-home {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    min-height: 90vh;
    max-height: 90vh;
    color: #fff;
    text-align: center;
    z-index: 2;
    padding: 0;
    top: 0;
    left: 0
}

.video-hero-home h1 {
    font-size: 2.398rem;
    margin: 0;
    font-family: "NHaasGrotDisp55Roman";
    letter-spacing: .265px;
}

.video-hero-home h2 {
    font-size: 2.46rem;
    font-family: "PPE", "NHaasGrotDisp55Roman";
    margin-left: 9px;
}

.grid--columns-columns button,
.grid--columns-columns button:hover {
    transition: .5s ease-in-out;
    color: #fff;
}

@media (min-width:767px) {
    .video-hero-home h1 {
        font-size: 4rem
    }

    .video-hero-home h2 {
        font-size: 3.9rem
    }

    .container-main {
        width: 100%
    }
}

.video-hero-home-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 92%;
    min-height: 90vh;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1
}

.cta,
.cta__bg,
.drawer,
.drawer__content,
.featured-image-wrapper,
.flickity-viewport,
.full-width-img,
.gallery,
.logo-cta,
.noscroll,
.video-container {
    overflow: hidden
}

.bgvid,
.cta,
.cta__outer,
.drawers-block__inner,
.featured-gallery-outer,
.flickity-enabled,
.form,
.full-width-img__inner,
.gallery,
.gallery__inner a,
.gallery__progress,
.hero,
.page-header__content,
.site-footer__inner,
.two-col-text,
.video-container {
    position: relative
}

.container-main {
    width: 100%;
    margin: 0 auto;
    padding: 0 25px
}

.container-projects>article,
.featured-properties-container {
    margin-top: 4em
}

.container-featured-head,
.full_width-feature {
    width: 100%;
    margin: 0 auto;
    text-align: center
}

.container-projects {
    width: 100%;
    margin: 0 auto 6em;
    max-width: 98%;
    padding: 0 15px
}

@media (min-width:767px) {
    .container-fluid {
        width: 100%;
        max-width: 98%
    }

    .featured-properties-container {
        margin-top: 4em;
        margin-bottom: 0
    }

    .container-projects {
        width: 100%;
        max-width: 90%;
        padding: 0
    }
}

.feature-full-content,
.site-container {
    width: 100%;
    margin: 0 auto
}

.page-template-page-home .c--home-container {
    padding: 8em 40px 6.2em
}

.c--home-container {
    background: #000;
    color: #fff;
    width: 100%;
    padding: 7em 1.99em 6em
}

.grid--columns-columns {
    grid-gap: 40px;
    text-align: center;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-direction: column
}

.grid--columns-columns h2 {
    font-size: 2.3rem;
    line-height: 1.2;
    margin-top: 0;
    text-transform: capitalize
}

.full_width_approach h3,
.u-link-button {
    text-transform: uppercase
}

.grid--columns-columns h3 {
    font-size: 1.51rem;
    line-height: 1.242;
    text-transform: none;
    margin-bottom: 1.67em;
    letter-spacing: .3px;
    font-family: 'HelveticaNeueLight'
}

.grid--columns-columns button {
    border-bottom: 1px solid #fff;
    padding-bottom: 2px;
    margin-bottom: 5px;
    text-decoration: none
}

.container-home {
    max-width: 95%;
    margin: 3em auto 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 0 15px
}

.home-feature-margins {
    margin: 4em auto 9em
}

.main-video {
    width: 100%;
    min-width: 100%;
    min-height: 600px;
    object-fit: cover
}

.container-m,
.container-w-sm {
    margin: 10em auto 0;
    max-width: 95%;
    width: 100%
}

.container,
.container--grid-x-3,
.container-intro,
.single--postcontainer {
    width: 100%;
    margin: 0 auto
}

.container {
    max-width: 95%;
    padding: 10vw 0
}

@media (min-width:992px) {
    .video-hero-home h1 {
        font-size: 4.4em;
    }

    .video-hero-home h2 {
        font-size: 4rem;
    }

    .container-main {
        width: 100%;
    }

    .container-fluid,
    .site-container {
        width: 100%;
        max-width: 90%;
    }

    .site-container {
        margin: 4em auto 5em;
        padding: 0;
    }

    .c--home-container {
        width: 100%;
        padding: 9.5em 20px 4em;
    }

    .grid--columns-columns {
        grid-template-columns: 33% 1fr;
        display: grid;
        grid-gap: 55px;
        text-align: left;
    }

    .page-template-page-home .grid--columns-columns {
        grid-template-columns: 25% 1fr;
        grid-gap: 0 100px;
    }

    .container {
        padding: 3vw 0;
        max-width: 85%;
    }
}

.container--grid-x-3 {
    padding: 4em 0 7em;
}

.pagination-property-container,
.single--postcontainer {
    padding: 3em 0
}

.single-post--content h4.wp-block-heading {
    border-bottom: 1px solid #000;
    padding-bottom: 2px;
    text-transform: uppercase;
    font-size: 21px;
    font-weight: 800;
    margin-top: 28px;
    letter-spacing: 2px
}

.container-intro {
    padding: 2em 30px
}

.container-full,
.container-w {
    margin: 50em auto 0;
    width: 100%
}

@media (min-width:700px) {
    .container-intro {
        padding: 14em 4em 2em
    }
}

.container-w {
    max-width: 95%
}

.container_position {
    margin: 6em auto;
    width: 100%;
    max-width: 98%
}

.standout_messaging_lg {
    margin: 1em 0 2em
}

.container h1 {
    font-size: 3em;
    margin-bottom: 15px
}

.container h2 {
    font-size: 1.8em;
    margin-bottom: 15px
}

.container h3 {
    font-size: 1.7em;
    line-height: 1.3
}

.video-container {
    width: 100%;
    height: 100%;
    padding-bottom: 56.25%;
    background-color: #000
}

.video-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.full_width_approach {
    color: #fff;
    text-align: center
}

.full_width_approach h3 {
    font-size: 22px;
    letter-spacing: -1px;
    padding: 10px 0
}

.cta__text h2,
.heading-container h2,
.home-intro,
h1.heading,
h2.heading {
    text-transform: capitalize;
}

.full_width_approach p {
    margin: 0 auto 20px;
    font-size: 23px;
    max-width: 90%;
    letter-spacing: 0;
    padding: 1em 0
}

.flickity-enabled:focus {
    outline: 0
}

.flickity-viewport {
    height: 100%;
    position: relative
}

.flickity-slider {
    height: 100%;
    position: absolute;
    width: 100%
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    user-select: none
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: grab
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: grabbing
}

.flickity-button {
    background: #ffffffbf;
    border: none;
    color: #333;
    position: absolute
}

.flickity-button:hover {
    background: #fff;
    cursor: pointer
}

.flickity-button:focus {
    box-shadow: 0 0 0 5px #19f;
    outline: 0
}

.flickity-button:active {
    opacity: .6
}

.flickity-button:disabled {
    cursor: auto;
    opacity: .3;
    pointer-events: none
}

.flickity-button-icon {
    fill: currentColor
}

.flickity-prev-next-button {
    border-radius: 50%;
    height: 44px;
    top: 50%;
    transform: translateY(-50%);
    width: 44px
}

.flickity-prev-next-button.previous {
    left: 10px
}

.flickity-prev-next-button.next {
    right: 10px
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px
}

.flickity-rtl .flickity-prev-next-button.next {
    left: 10px;
    right: auto
}

.flickity-prev-next-button .flickity-button-icon {
    height: 60%;
    left: 20%;
    position: absolute;
    top: 20%;
    width: 60%
}

.flickity-page-dots {
    bottom: -25px;
    line-height: 1;
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    text-align: center;
    width: 100%
}

.flickity-rtl .flickity-page-dots {
    direction: rtl
}

.flickity-page-dots .dot {
    background: #333;
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
    height: 10px;
    margin: 0 8px;
    opacity: .25;
    width: 10px
}

main {
    display: block
}

small {
    font-size: 80%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative
}

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    width: 100%;
    object-fit: cover;
}


svg {
	width: 100%;
}

button,
input,
optgroup,
select,
textarea {
    font-size: 100%;
    line-height: 1.15
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
    outline: ButtonText dotted 1px
}

legend {
    display: table;
    max-width: 100%;
    white-space: normal
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
    height: auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}

summary {
    display: list-item
}

.page-header__pattern,
.property__overview,
.u-hidden,
[hidden],
template {
    display: none
}

.featured-image-wrapper {
    position: relative;
    text-align: center
}

.featured-image {
    width: 100%;
    height: 100%;
    min-height: 500px;
    object-fit: cover;
    object-position: center
}

.featured-image-project {
    width: 100%;
    height: 100%;
    min-height: 600px;
    object-fit: cover;
    object-position: 50% 67%
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .23)
}

.page-title-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1
}

.page-title {
    color: #fff;
    font-size: clamp(2.5rem, 2vw + 1rem, 2.5rem);
    margin: 0;
    font-weight: 300;
    line-height: 1.2
}

.rtf h1,
.t-heading-xl {
    font-size: 40px;
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.2
}

h2.wp-block-heading {
    font-size:1.9em;
    border-bottom: 1px solid #ddd;
    padding-bottom:10px;
}

.header-spacing {
    letter-spacing: 1px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 13px;
    margin-bottom: 12px
}

.heading-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 20px;
    text-align: center;
    margin: 12ch 10px 7ch;
    align-content: center;
    align-items: center;
}

@media (min-width:767px) {
    .container-home {
        width: 100%;
        max-width: 83%
    }

    .heading-container {
        grid-template-columns: 32% 1fr;
        grid-gap: 10%;
        margin: 0 auto;
        padding: 30px 0 3.5em;
        text-align: left;
        align-items: flex-start;
        align-content: flex-start;
    }

    .site-footer__copyright p {
        margin: 0
    }
}

.box-button,
.cta__inner,
.main-container {
    text-align: center
}

.page-id-4582 .heading-container {
    padding: 5em 0 5.2em
}

.heading-container h1 {
    font-size: 35px;
    line-height: 1.1;
    letter-spacing: 1px
}

.heading-container h2 {
    font-size: 40px;
    line-height: 1.1920;
    letter-spacing: 3px;
    margin-top: 0;
    font-size: 14px;
    text-transform: uppercase;
    
}


h2.heading {
    line-height: 1.1;
    letter-spacing: -.51px;
    font-size: 38px;
    font-weight: 500
}

.heading-container p {
    letter-spacing: 0;
    font-size: 29px
}

.t-heading-l {
    font-size: 32px;
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.2
}

h1.heading {
    font-size: 34px;
    letter-spacing: -.5px;
    line-height: 1.131;
    margin: 0;

}

p.subheader {
    font-size: 24px;
    letter-spacing: 0;
    line-height: 1.23;
    margin: 0
}

.heading--main h3,
.heading--main p {
    line-height: 1.32424;
    font-size: 22px;

}

.c-header h3 {
    font-size: 22px;
    letter-spacing: 0;
    line-height: 1.23;
    margin: 0
}

.t-heading-m {
    font-size: 34px;
    font-weight: 400;
    letter-spacing: -.02em;
    line-height: 1.1
}

.align-full-pad {
    margin: 0 auto;
    padding: 3em 10em !important;
    width: 100%
}

.project-wrapper {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    max-width: 80%;
    padding: 0 !important
}

.relative__padding,
.relative_pad {
    padding: 2em;
    margin: 20px auto
}

.content_description_pad {
    padding: 2em 1em
}

.margin_contain_md {
    margin: 0 auto;
    width: 100%;
    max-width: 100%
}

.u-container {
    margin: 0 auto;
    width: 90%
}

.general-container,
.main-container,
.project_gallery_offset {
    margin: 0 auto;
    width: 100%
}

.u-container-large {
    margin-left: auto;
    margin-right: auto;
    max-width: 85%;
    width: 100%
}

.container-filter-dropdown,
.nav-container {
    width: 100%;
    max-width: 90%;
    margin: 0 auto
}

.container-filter-dropdown {
    padding: 4em 0 1em
}

.block-margins-top-bottom .wp-block-columns {
    margin-top: 14em
}

.content-blocks-padding {
    padding: 7em 3em
}

.u-link-underline,
.u-link-underline-reverse {
    display: inline-block;
    padding: 8px 0;
    transition: border .15s linear
}

.block-interior-image img {
    height: 100% !important;
    min-height: 100% !important
}

.block-grouping {
    margin: 30em 5em 10em
}

.block-interior-image,
.block-interior-image .wp-block-image img,
.h-100 {
    height: 100% !important
}

.wp-blocks-columns .wp-block-image img {
    height: 100% !important;
    min-height: 700px !important
}

.wp-block-group block-grouping {
    padding: 3em 5em 5em;
    margin-top: 14em
}

.block-margins {
    margin-bottom: 3em;
    margin-top: 3em
}

.block-margins-top-bottom {
    margin: 7em 0
}

.u-link-underline {
    border-bottom: 1px solid #2f4b54
}

.u-link-underline.--is-active {
    border-bottom-color: #0000
}

.u-link-underline-reverse {
    border-bottom: 1px solid #0000
}

.u-link-button,
.u-link-underline {
    width: 350px
}

.u-link-underline-reverse.--is-active {
    border-bottom-color: #2f4b54
}

.contacts a,
.footer-link a,
.white a,
a.footer-w {
    color: #fff
}

.footer-link a {
    font-size: 15px
}

.center-button-220 {
    width: 200px;
    display: flex;
    justify-content: center;
    text-align: center
}

.u-link-button {
    display: inline-block;
    padding: 24px;
    position: relative
}

.cta__bg img,
.featured-gallery__img img {
    height: calc(100% + 4px);
    left: -2px;
    object-position: center;
    top: -2px;
    width: calc(100% + 4px);
    object-fit: cover;
    bottom: -2px;
    max-height: 200%;
    right: -2px
}

.box-button {
    background-color: initial;
    border: none;
    display: inline-block;
    padding: 20px;
    position: relative;
    width: 80%
}

.box-button:before {
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 14px;
    top: 14px
}

.box-button:after {
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    bottom: 14px;
    left: 14px;
    position: absolute;
    right: 0;
    top: 0
}
img.lazyload:not(.lazyfade),
svg.lazyload:not(.lazyfade) {
    max-width: 9999px;
    width: 100%
}

img.lazyfade,
svg.lazyfade {
    opacity: 0;
    transition: opacity .15s linear
}

.project_block_offset,
ol[class],
ul[class] {
    padding: 0
}

.cta {
    z-index: 2
}

.cta__outer {
    align-items: flex-end;
    display: flex;
    margin-bottom: 8.75vw;
    padding: 400px 0 80px;
    width: 100%;
    background: #000
}

.drawers-block__pattern,
.grid-pattern {
    background-image: url(/static/grid-pattern-repeating.svg);
    background-repeat: repeat
}

.cta__text h6,
.drawers-block__left .t-eyebrow-l,
.site-footer__label {
    margin-bottom: 16px
}

.cta__bg {
    z-index: 1
}

.cta__bg,
.cta__bg:before {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.cta__bg:before {
    background: linear-gradient(0deg, rgba(0, 0, 0, .3), rgba(0, 0, 0, 0));
    content: "";
    transition: background .15s linear;
    z-index: 5
}

.cta__bg img {
    max-width: 200%;
    position: absolute
}

.cta__content {
    position: relative;
    z-index: 5;
    padding-bottom: 2em
}

.cta__text h6 {
    color: #fff;
    font-size: 17px;
    font-weight: 900
}

.cta__text h2 {
    max-width: 18em;
    color: #fff
}

.drawer {
    background-color: #fff;
    padding: 20px 25px;
    position: relative
}

.drawer:after,
.drawer:before {
    background-color: transparent;
    content: "";
    height: 0;
    position: absolute;
    width: 0
}

.drawer:before {
    bottom: 0;
    left: 0;
    transform: translate3d(-50%, 50%, 0) rotate(45deg)
}

.drawer:after {
    right: 0;
    top: 0;
    transform: translate3d(50%, -50%, 0) rotate(45deg)
}

.drawer+.drawer {
    margin-top: 20px
}


.mobile-nav{
	padding-top: 4em;
}
.drawer__heading,
.mobile-nav__sub-nav-toggle,
.radio-item label {
    cursor: pointer;
    position: relative
}

.drawer__heading:after {
    height: 1.5px;
    margin-top: -.75px;
    right: 0;
    width: 25px
}

.drawer__heading:after,
.drawer__heading:before {
    background-color: #2f4b54;
    content: "";
    position: absolute;
    top: 50%;
    transition: transform .5s cubic-bezier(.19, 1, .22, 1), opacity .25s linear
}

.drawer__heading:before {
    height: 25px;
    margin-top: -12.5px;
    right: 11.75px;
    width: 1.5px
}

.drawer__content {
    max-height: 0;
    transition: max-height 1s cubic-bezier(.19, 1, .22, 1)
}

.drawer__content-inner {
    opacity: 0;
    transition: opacity .3s linear
}

.drawer.--is-open .drawer__heading:after,
.drawer.--is-open .drawer__heading:before {
    transform: rotate(90deg)
}

.drawer.--is-open .drawer__heading:after {
    opacity: 0
}

.drawer.--is-open .drawer__content {
    max-height: 999px
}

.drawers-block__pattern {
    background-position: 0 100%;
    background-size: calc(2.5vw - .5px) calc(2.5vw - .5px);
    border-bottom: .5px solid #d9d5d0;
    border-right: .5px solid #d9d5d0;
    bottom: -90px;
    height: 100%;
    left: 0;
    position: absolute;
    width: calc(60vw - 12px)
}

.drawers-block__pattern:before {
    background: 0 0;
    content: "";
    height: 50%;
    position: absolute;
    right: -1px;
    top: 0;
    width: 100%
}

.drawers-block__left,
.drawers-block__right,
.form__ctr,
.logo-cta__logos,
.logo-cta__text,
.two-col-text__full,
.two-col-text__left,
.two-col-text__right {
    grid-column: span 8
}

@media (max-width:63.99em) {
    .drawers-block__left .t-heading-xl {
        margin-bottom: 24px
    }
}

@media (max-width:63.99em) and (min-width:49.375em) {
    .drawers-block__left .t-heading-xl {
        margin-bottom: 32px
    }
}

.drawers-block__body p {
    max-width: 24em
}

.drawers-block__drawers {
    margin-top: 50px
}

.featured-gallery {
    aspect-ratio: 3/4;
    position: relative
}

.featured-gallery__slide {
    align-content: flex-end;
    align-items: flex-end;
    aspect-ratio: 3/4;
    display: flex;
    padding-bottom: 40px;
    pointer-events: none;
    position: relative;
    width: 100%;
    z-index: 0
}

.featured-gallery__slide.is-selected,
.featured-gallery__slide.is-selected .featured-gallery__link {
    pointer-events: all
}

.featured-gallery__img {
    bottom: 0;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 0
}

.featured-gallery__img:before {
    background: linear-gradient(0deg, #000000a6, #0000);
    bottom: 0;
    content: "";
    height: 50%;
    left: 0;
    position: absolute;
    transition: background .15s linear;
    width: 100%;
    z-index: 2
}

.featured-gallery__img img {
    max-width: 200%;
    position: absolute
}

.featured-gallery__inner {
    pointer-events: none;
    position: relative
}

.featured-gallery__heading {
    font-size: 32px;
    line-height: 1.375;
    margin-bottom: 10px
}

.featured-gallery__address span {
    display: inline-block;
    width: 16px
}

.bgvid,
.form,
.full-width-img__inner img {
    width: 100%
}

.featured-gallery__link {
    margin-top: 36px
}

.featured-gallery__controls {
    align-items: center;
    bottom: 48px;
    display: flex;
    position: absolute;
    right: 8.75vw
}

.featured-gallery__indicator {
    -webkit-touch-callout: none;
    display: block;
    font-size: 24px;
    font-weight: 300;
    margin: 0 8px;
    min-width: 55px;
    pointer-events: none;
    text-align: center;
    -webkit-user-select: none;
    user-select: none
}

.input-item,
.radio-item {
    -webkit-user-select: none;
    -moz-user-select: none
}

.cursor,
.featured-gallery__current-slide,
.featured-item__video,
.hide,
.property-pagination__current-page,
.sbe_portfolio-item.hidden,
.team-gallery,
.team-modal {
    pointer-events: none
}

.featured-gallery__next,
.featured-gallery__prev,
.gallery__nav .featured-gallery__indicator,
.grid--single-team,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav {
    display: block
}

.gallery__nav .featured-gallery__next svg *,
.gallery__nav .featured-gallery__prev svg * {
    stroke: #2f4b54
}

.bgvid {
    min-width: 100%;
    z-index: 2
}

.form__addresses {
    grid-column: span 8;
    margin-top: 80px
}

.form__addresses address {
    margin: 15px 0 30px
}

.form form label {
    color: #595755;
    font-size: 16px;
    font-weight: 400;
    pointer-events: none
}

.form form input[type=email],
.form form input[type=text],
.form form select,
.form form textarea {
    background-color: initial;
    border: 0;
    border-bottom: 1px solid #d9d5d0 !important;
    border-radius: 0;
    box-shadow: none !important;
    font-size: 16px;
    outline: 0;
    padding: 0 0 16px
}

.form form select {
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="12" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M.276.652A.9.9 0 0 1 1.55.677L6 5.402 10.451.677a.9.9 0 1 1 1.298 1.247l-5.1 5.4a.9.9 0 0 1-1.298 0l-5.1-5.4A.9.9 0 0 1 .276.652Z" fill="%23000" fill-opacity=".3"/></svg>') !important;
    background-size: 12px 7.2px !important
}

.form form textarea {
    height: 200px
}

.form form .fui-type-dropdown label,
.form form .fui-type-multi-line-text label,
.form form .fui-type-name label,
.form form .fui-type-single-line-text label {
    transform: translateY(30px);
    transform-origin: 0 0;
    transition: transform .51s cubic-bezier(.19, 1, .22, 1), font-size .2s linear
}

.form form .fui-type-dropdown.--is-changed label,
.form form .fui-type-multi-line-text.--is-changed label,
.form form .fui-type-name.--is-changed label,
.form form .fui-type-single-line-text.--is-changed label {
    transform: translateY(10px) scale(.75)
}

.form form button {
    color: #fff;
    width: 100%
}

.form form button:focus {
    background-color: initial;
    color: #fff
}

.form form .fui-btn-wrapper {
    margin-top: 48px
}

.form .fui-alert {
    background-color: initial;
    color: #000;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: -.01em;
    line-height: 1.5;
    padding: 0 !important
}

.form .fui-alert.fui-alert-error {
    color: #a54a3c
}

.--block-twoColumnText+.form {
    margin-top: -48px
}

.full-width-img,
.logo-cta {
    position: relative;
    z-index: 2
}

.full-width-img__inner {
    margin-left: calc(9.75% + 2px);
    width: 90.25%;
    z-index: 1
}

.gallery-btn {
    font-size: 24px
}

.gallery-btn svg {
    display: inline-block;
    margin-right: 6px;
    margin-top: -2px;
    vertical-align: middle
}

.gallery-btn span {
    font-size: .6em;
    vertical-align: top
}

.gallery {
    background-color: #eeece9;
    padding-bottom: 40px;
    width: 100vw
}

.gallery .flickity-viewport,
.gallery__inner,
hr {
    overflow: visible
}

.gallery__heading,
.two-col-text__left :last-child {
    margin-bottom: 40px
}

.gallery__inner a {
    cursor: zoom-in;
    display: block;
    height: 70vh;
    margin-right: 25px
}

.hero,
.hero img {
    aspect-ratio: 1/1.1
}

.gallery__inner a:last-of-type,
.site-header__nav .site-header__sub-nav-ctr>a:last-of-type,
.site-header__nav>a:last-of-type {
    margin-right: 0
}

.gallery__inner a img {
    bottom: 0;
    display: block;
    height: 100%;
    left: 0;
    object-fit: cover;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%
}

.gallery__progress {
    background-color: #d9d5d0;
    height: 1px;
    margin-top: 30px;
    width: 100%
}

.gallery .flickity-page-dots .dot.is-selected,
.gallery__progress-bar {
    background-color: #2f4b54
}

.gallery__progress-bar {
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    width: 80px
}

.gallery__nav {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    margin-top: 30px
}

.gallery .flickity-page-dots,
.team-gallery,
.team-gallery__header {
    display: flex
}

.gallery .flickity-page-dots .dot {
    background-color: #d9d5d0;
    border-radius: 0;
    flex-grow: 1;
    height: 2px;
    margin: 0;
    width: auto
}

.grid-pattern {
    background-position: 0 0;
    background-size: cover;
    background-size: calc(2.5vw - .5px) calc(2.5vw - .5px);
    border-left: .5px solid #d9d5d0;
    display: none;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    width: calc(35vw - 7px);
    z-index: 0
}

.grid-pattern:after {
    bottom: 0;
    content: "";
    height: 66.666%;
    left: -1px;
    position: absolute;
    width: 100%
}

.grid-pattern.--reverse {
    background-position: 100% 0;
    left: 0;
    right: auto;
    width: 37.5%
}

.grid-pattern.--fit,
.splide__list,
.splide__slide,
.splide__track,
section.property-single-media {
    height: 100%
}

.grid-pattern .page-content__block>.grid-pattern {
    top: 0
}

@media (min-width:49.375em) {

    .rtf h1,
    .t-heading-xl {
        font-size: 64px;
        line-height: 1.1
    }

    .t-heading-l {
        font-size: 56px;
        line-height: 1.1
    }

    .t-heading-m {
        font-size: 36px;
        line-height: 1.16666667
    }

    .u-container {
        width: 80%
    }

    .drawers-block__left .t-eyebrow-l {
        margin-bottom: 24px
    }

    .featured-gallery {
        aspect-ratio: 4/3
    }

    .featured-gallery__slide {
        aspect-ratio: 4/3;
        padding-bottom: 72px
    }

    .featured-gallery__controls {
        bottom: 78px;
        right: 5vw
    }

    .form {
        margin-bottom: 96px
    }

    .form__ctr {
        grid-column: span 7
    }

    .form__addresses {
        grid-column: 11/span 5;
        margin-top: 35px;
        padding-left: 20px
    }

    .form .fui-alert {
        font-size: 21px
    }

    .--block-twoColumnText+.form {
        margin-top: -96px
    }

    .full-width-img__inner {
        margin-left: 5%;
        width: 95%
    }

    .gallery {
        padding-bottom: 96px
    }

    .gallery__progress {
        margin-top: 35px
    }

    .grid-pattern {
        display: block;
        min-height: 750px
    }

    .page-company .grid-pattern {
        min-height: 100%
    }

    .hero,
    .hero img {
        aspect-ratio: 2/1.333
    }
}

.hero img {
    display: block;
    left: 0;
    object-fit: cover;
    position: fixed;
    transition: transform 10s cubic-bezier(.19, 1, .22, 1);
    width: 100%
}

.focus-type img,
.property-bioimage img,
.team-bioimage img {
    left: -2px;
    object-position: center;
    top: -2px;
    object-fit: cover;
    overflow: hidden
}

.hero.js-anim-in img {
    transform: scale(1.15)
}

.hero.js-anim-in.--is-visible img.is-loaded {
    transform: none
}

.logo-cta__inner {
    align-items: center;
    padding: 90px 10vw 90px 0;
    position: relative
}

@media (min-width:105.5625em) {

    .cta__inner,
    .logo-cta__inner {
        margin-left: calc(50vw - 760px)
    }

    .cta__inner {
        text-align: left
    }

    .featured-gallery__controls {
        right: calc(50vw - 760px)
    }
}

.logo-cta__inner:after {
    background-color: #eeece9;
    content: "";
    display: block;
    height: 100%;
    left: 100%;
    position: absolute;
    top: 0;
    width: 100vw
}

.logo-cta__text h3 {
    margin-bottom: .6em
}

.logo-cta__text .rtf * {
    color: #d9d5d0
}

.images,
.logo-cta__logos,
.page-header.--two-col .page-header__content {
    display: flex;
    flex-wrap: wrap
}

.logo-cta__logo,
.logo-cta__logos {
    align-items: center;
    justify-content: center
}

.logo-cta__logo {
    display: inline-flex;
    padding: 25px 5vw;
    width: 50%
}

@media (min-width:49.375em) {
    .logo-cta__logo {
        padding: 30px 60px;
        width: 33.333%
    }

    .logo-cta__logo.--multifamily-award {
        flex-grow: 1
    }

    .page-content__block.--extra-padding {
        padding: 42px 0
    }
}

.featured-item:hover::after,
.logo-cta__logo img,
.project-gridx3 .project-item:focus::after,
.project-gridx3 .project-item:hover::after,
.property,
.sbe_portfolio-grid .sbe_portfolio-item:focus::after,
.sbe_portfolio-grid .sbe_portfolio-item:hover::after,
.team-gallery__headshot,
.team-gallery__text,
.wp-block-image .aligncenter {
    width: 100%
}




/* MOBILE NAVIGATION */
.mobile-nav {
    background: #000;
    height: 100vh;
    left: 0;
    opacity: 0;
    padding-top: 80px;
    pointer-events: none;
    position: absolute;
    top: 0;
    transition: opacity .4s ease;
    width: 100%;
    z-index: 99
}

.mobile-nav__inner {
    height: calc(var(--vh100) - 80px);
    overflow-y: auto;
    background: #000
}

.mobile-nav__footer {
    background-color: #000;
    border-top: 1px solid #fff;
    bottom: 0;
    display: flex;
    flex-direction: column;
    left: 0;
    padding: 32px 0;
    position: absolute;
    width: 100%;
}

.mobile-nav__footer a {
    color: #fff;
    font-size: 14px;
}

.mobile-nav__footer p {
    color: #fff;
    font-size: 15px;
    padding: 0;
	font-family: var(--font-helvetica-roman);
    letter-spacing: 0;
    margin: 0;
}

.mobile-nav__content {
    opacity: 0;
    padding-bottom: 150px;
    transform: translateY(30px);
    transition: opacity .5s ease, transform .8s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: .15s;
}

.mobile-nav__legal-links,
.property__name h6+h1,
.site-footer address+.site-footer__label {
    margin-top: 16px
}

.mobile-nav__legal-links a {
    margin-right: 16px
}

.mobile-nav__client-nav .mobile-nav__sub-nav-toggle,
.mobile-nav__client-nav a,
.mobile-nav__main-nav .mobile-nav__sub-nav-toggle,
.mobile-nav__main-nav a {
    display: block;
    font-size: 28px;
    color: #fff;
    letter-spacing: 1px;
    padding-bottom: 10px;
    margin-top: 20px;
    line-height: 1
}

.mobile_nav-footer p.copyright {
    text-transform: uppercase;
}

.mobile_nav_legal {
    display: flex;
    justify-content: space-between;
    margin-top: 10px
}

.mobile_nav_legal a {
    border-bottom: 1px solid #fff;
    padding-bottom: 3px;
    margin-bottom: 10px
}

.mobile-nav__client-nav a.copyright {
    font-size: 19px;
    letter-spacing: 0;
    line-height: 1;
    padding: 15px 0 3px;
    margin: 0
}

.mobile-nav__main-nav {
    padding-top: 40px
}

.mobile-nav__client-nav {
    margin-top: 40px;
    border-top: 1px solid #fff;
    padding-top: 20px
}

/* =========================================================
   ULTRA-SMOOTH TOGGLE SECTION
   ========================================================= */

.mobile-nav__sub-nav-toggle {
    position: relative;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

.mobile-nav__sub-nav-toggle:after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    height: 10px;
    position: absolute;
    right: 4px;
    top: 10px;
    transform: rotate(45deg);
    width: 10px;
    /* Softens the arrow rotation */
    transition: transform 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}

.mobile-nav__sub-nav-toggle.--is-open:after {
    transform: rotate(-135deg) translate3d(-2px, -2px, 0);
}

.mobile-nav__sub-nav {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    /* The "Quintic" curve: starts fast to feel responsive, ends very slow to feel smooth */
    transition: 
        max-height 0.9s cubic-bezier(0.23, 1, 0.32, 1),
        opacity 0.6s ease;
    will-change: max-height; /* Hardware acceleration hint */
}

.mobile-nav__sub-nav-toggle.--is-open + .mobile-nav__sub-nav {
    max-height: 500px; /* Adjust based on your content height */
    opacity: 1;
}

.mobile-nav__sub-nav a {
    font-size: 19px;
    margin: 0;
    padding: 12px 0;
    line-height: 1.4;
    letter-spacing: 1px;
    
    /* The "Unfold" Effect */
    opacity: 0;
    transform: translateY(-15px) scale(0.98);
    transform-origin: top;
    transition: 
        opacity 0.6s ease, 
        transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.mobile-nav__sub-nav-toggle.--is-open + .mobile-nav__sub-nav a {
    opacity: 1;
    transform: translateY(0) scale(1);
    /* Delayed link entrance for a premium feel */
    transition-delay: 0.1s;
    padding: 2px 0;
}

.mobile-nav__sub-nav a:last-of-type {
    padding-bottom: 25px
}




.site-footer_column h4,
p.js-team-gallery-next-name,
p.js-team-gallery-prev-name {
    letter-spacing: 2px;
    text-transform: uppercase
}



.page-content__block,
.property-grid {
    position: relative;
    scroll-margin-top: 150px
}

.page-content__block.--block-beliefs,
.page-content__block.--block-drawers,
.page-content__block.--block-headingAndList,
.page-content__block.--block-logoCta,
.page-content__block.--block-twoColumnText {
    margin: 72px 0
}

.property-pagination__page-icon+.property-pagination__property,
.property-pagination__property+.property-pagination__page-icon {
    margin-left: 22px
}

.page-content__block>.grid-pattern {
    top: -72px
}

.page-header {
    padding: 176px 0 72px;
    position: relative
}

.page-header__inner {
    position: relative;
    z-index: 2
}

.page-header__content p {
    max-width: 24em
}

.page-header__footer {
    margin-top: 24px
}

.page-header__stats {
    margin-top: 28px
}

.page-header__featured-link {
    align-items: center;
    bottom: 5px;
    display: flex;
    position: absolute;
    right: 0
}

.page-header__featured-link-icon {
    margin-right: 18px
}

.page-header.--home .page-header__footer {
    text-align: left
}

.page-header.--two-col .page-header__left {
    margin-bottom: 24px
}

.page-header.--less-spacing {
    padding-bottom: 40px
}

.page-header.--less-spacing+.page-content__block {
    margin-top: 0
}

.properties-ctr {
    position: relative;
    transition: opacity .15s linear, filter .15s linear
}

.properties-ctr.--is-loading {
    filter: grayscale(1);
    opacity: .5
}

.properties-ctr__inner {
    padding-bottom: 56px
}

.property-filters {
    padding-bottom: 48px;
    padding-top: 48px
}

.property-filters__inner {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.property-filters__heading h2 {
    display: inline-block;
    font-size: 32px
}

.property-filters__heading span {
    display: inline-block;
    vertical-align: top
}

.property-filters__filters {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
    width: 100%
}

@media (min-width:49.375em) {

    .page-content__block.--block-beliefs,
    .page-content__block.--block-drawers,
    .page-content__block.--block-headingAndList,
    .page-content__block.--block-logoCta,
    .page-content__block.--block-twoColumnText {
        margin: 90px 0
    }

    .page-content__block>.grid-pattern {
        top: -90px
    }

    .page-header {
        padding: 156px 0 96px
    }

    .properties-ctr__inner,
    .property-filters {
        padding-bottom: 96px
    }

    .page-header__footer {
        margin-top: 40px
    }

    .page-header__stats {
        margin-top: 48px
    }

    .page-header.--two-col .page-header__left,
    .page-header.--two-col .page-header__right {
        width: 50%
    }

    .page-header.--two-col .page-header__left {
        padding-right: 6.25%
    }

    .property-filters {
        padding-top: 96px
    }

    .property-filters__heading h2 {
        font-size: 28px
    }

    .property-filters__filters {
        margin-top: 0;
        min-width: 50%;
        width: auto
    }
}

@media (min-width:64em) {

    .drawer:after,
    .drawer:before {
        height: 35px;
        width: 35px
    }

    .drawer {
        padding: 30px 35px
    }

    .drawers-block__pattern {
        bottom: -130px;
        width: calc(35vw - 7px)
    }

    .drawers-block__left {
        padding-right: 25px
    }

    .drawers-block__body {
        margin-top: 44px
    }

    .drawers-block__drawers {
        margin-top: 75px
    }

    .featured-gallery,
    .featured-gallery__slide {
        aspect-ratio: 16/8
    }

    .featured-gallery__heading {
        font-size: 24px;
        line-height: 1.5;
        margin-bottom: 4px
    }

    .featured-gallery__link {
        bottom: 0;
        pointer-events: none;
        position: absolute;
        right: 18.75%;
        z-index: 0
    }

    .form__ctr {
        grid-column: span 8
    }

    .form__addresses {
        grid-column: 12/span 5
    }

    .gallery__heading {
        margin-bottom: 60px
    }

    .hero,
    .hero img {
        aspect-ratio: 16/7
    }

    .logo-cta__inner {
        padding: 110px 0
    }

    .logo-cta__text {
        padding-right: 20%
    }

    .logo-cta__logo {
        padding: 30px 40px
    }

    .page-content__block.--extra-padding {
        padding: 62px 0
    }

    .page-content__block.--block-beliefs,
    .page-content__block.--block-drawers,
    .page-content__block.--block-headingAndList,
    .page-content__block.--block-logoCta,
    .page-content__block.--block-twoColumnText {
        margin: 130px 0
    }

    .page-content__block>.grid-pattern {
        top: -130px
    }

    .page-header__pattern {
        background-image: url(/static/grid-pattern.svg);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: cover;
        display: block;
        height: 100%;
        position: absolute;
        right: 0;
        top: 0;
        width: 38.888889%;
        z-index: 0
    }

    .page-header__pattern:after {
        background: 0 0;
        bottom: 0;
        content: "";
        height: 50%;
        left: 0;
        position: absolute;
        width: 100%
    }

    .page-header.--less-spacing {
        padding-bottom: 72px
    }

    .property-filters__filters {
        min-width: 40%
    }
}

.property-grid__header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 40px;
    position: relative;
    width: 100%
}

.property-grid__header h2 {
    font-size: 2em
}

.property-grid__header p {
    margin-top: 20px;
    font-size: 27px
}

.property-grid__inner {
    grid-gap: 48px;
    display: grid;
    grid-template-columns: repeat(6, 1fr)
}

.property-grid__block {
    grid-column: span 6
}

.property-grid__no-results {
    grid-column: span 6;
    margin-bottom: 48px
}



@media (max-width:792px) {

    .featured-gallery__prev,
    .gallery__inner a {
        margin-right: 16px
    }

    .form button,
    .u-link-button {
        width: 100%
    }

    .drawers-block__pattern,
    .featured-gallery__indicator {
        display: none
    }

    .full-width-img {
        padding-top: calc(20vw + 2px)
    }

    .full-width-img:before {
        background-image: url(/static/grid-pattern-mobile.svg);
        background-position: 0 0;
        background-repeat: no-repeat;
        background-size: 100% auto;
        height: 100%;
        top: 0
    }

    .full-width-img:after,
    .full-width-img:before {
        content: "";
        left: 0;
        position: absolute;
        width: 100%
    }

    .full-width-img:after {
        background: linear-gradient(180deg, #eeece900, #eeece966 28.48%, #eeece9);
        bottom: 0;
        height: 50%
    }

    .full-width-img__inner img {
        aspect-ratio: 1/1.3;
        object-fit: cover
    }

    .gallery__inner a {
        aspect-ratio: 16/9 !important;
        background-color: #d9d5d0;
        height: auto !important;
        width: 100%
    }

    .gallery__inner a img.--tall {
        object-fit: contain !important
    }

    .gallery__nav {
        justify-content: space-between;
        margin-bottom: 80px
    }

    .grid-pattern {
        background-size: 10vw
    }

    .grid-pattern.--keep-mobile {
        display: block;
        height: 100%;
        width: 100%
    }

    .property-grid__pattern {
        background-size: 10vw;
        bottom: -20vw;
        height: 150vh;
        width: 100vw
    }
}

.property-grid__pattern:before {
    background: linear-gradient(0deg, #eeece900, #eeece966 28.48%, #eeece9);
    content: "";
    height: 50%;
    left: -1px;
    position: absolute;
    top: 0;
    width: 100%
}

.property-grid.--team {
    padding-bottom: 20vw
}

.property-grid.--team .property-grid__inner {
    grid-gap: 15px
}

.property-pagination__inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 90%
}

.reverse-prev {
    transform: scaleX(-1)
}

p.property-pagination__label {
    margin: 0;
    padding: 0;
    text-transform: uppercase;
    font-family: "HelveticaNeueRoman";
}




.property-pagination__all span,
.single-team h4,
.t-body-20,
.t-content-med,
.t-pagination-c {
    font-size: 20px
}

.property-pagination__page-icon {
    align-items: center;
    display: flex;
    background: #000;
    justify-content: center
}

.property-pagination__page-icon svg {
    color: #000
}

.property-pagination__property {
    max-width: calc(100% - 70px);
    transition: opacity .2s linear
}

.property-pagination__property.--is-hidden {
    opacity: 0
}

@media (max-width:55.615em) {
    .property-pagination__property {
        display: none
    }
}

.property-pagination__all-icon {
    margin-right: 10px
}

.property-bioimage:before,
.site-header,
.team-bioimage:before {
    transition: background .15s linear
}

.property-thumb {
    align-content: flex-end;
    align-items: flex-end;
    aspect-ratio: 3/4;
    display: flex;
    overflow: hidden;
    padding: 24px;
    position: relative
}

.focus-type,
.property-bioimage,
.team-bioimage {
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 0
}

.property-bioimage:before {
    background: linear-gradient(0deg, #000000b3 20%, #0000);
    bottom: 0;
    content: "";
    height: 40%;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 2
}

.property-bioimage img {
    bottom: -2px;
    height: calc(100% + 4px);
    max-height: 200%;
    max-width: 200%;
    position: absolute;
    right: -2px;
    transition: transform 2s cubic-bezier(.19, 1, .22, 1);
    width: calc(100% + 4px)
}

.property-thumb__text {
    position: relative;
    z-index: 1
}

.property-thumb__heading {
    font-size: 30px;
    line-height: 1.375;
    margin-bottom: 10px;
    letter-spacing: .5px
}

.property,
.property__meta {
    background-color: #eeece9;
    position: relative
}

.property__meta {
    grid-column: span 8;
    padding: 0 0 40px;
    z-index: 1
}

.property__name,
.section-property-content>.section-wrapper .meta-wrapper>div.size {
    padding-right: 60px
}

.property__meta:before {
    background-color: #eeece9;
    content: "";
    height: 100%;
    position: absolute;
    right: 100%;
    top: 0;
    width: 100vw
}

.site-footer,
.site-header:after,
section._dark ._hidecircle {
    background: #000
}

.property__name {
    padding-top: 40px
}

.property__address-and-stat {
    border-top: 1px solid #d9d5d0;
    display: flex;
    margin-top: 40px
}

.property__address,
.property__stat {
    padding-top: 24px
}

.property__address {
    width: 71.428571%
}

.property__stat {
    border-left: 1px solid #d9d5d0;
    padding-left: 24px;
    width: 28.571429%
}

.property__description,
.site-footer__fax,
.site-footer__phone {
    margin-top: 32px
}

.property__gallery-btn {
    margin-top: 80px
}

.site-footer {
    color: #fff;
    overflow: hidden;
    padding: 60px 0 0;
    position: relative;
    font-size: 15px
}

.site-footer__bg,
.team-bioimage.--no-headshot:after {
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg width='667' height='650' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M297 0h370v130H297.938l129.233 129.141V650H297.454V259.141H0V129.517h297V0Z' fill='%23181A1C'/%3E%3C/svg%3E") 0 0/cover no-repeat;
    right: 0
}

.site-header,
.team-bioimage.--no-headshot {
    background-color: #000
}

.site-footer .u-container {
    width: 90%
}

.site-footer_column h4 {
    font-weight: 600;
    margin: 20px 0;
    border-bottom: 1px solid #fff;
    display: inline-block;
    padding-bottom: 1px;
    font-size: 16px
}

.site-footer__logo svg * {
    fill: #eeece9
}

.site-footer__bg {
    bottom: 0;
    position: absolute;
    top: 0;
    width: 40%
}

.site-footer__middle {
    margin-top: 72px
}

.site-footer__legal {
    margin-top: 76px
}

.contact-item {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 20px;
    margin: 0 0 10px
}

.site-footer_column {
    padding-bottom: 10px
}

.site-footer_column p {
    font-size: 18px;
    line-height: 1.32;
    letter-spacing: .31px
}

.site-footer_column h3 {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 13px;
    margin: 10px 0 0;
    border-bottom: 1px solid rgba(255, 255, 255, .53);
    padding-bottom: 2px
}

.site-footer__bottom {
    text-align: center;
    line-height: 1.2;
    font-size: 15px;
    padding: 20px 0 4em;
    border-top: 1px solid rgba(255, 255, 255, .41)
}

.site-footer__bottom-left {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    width: 100%
}

@media (min-width:49.375em) and (max-width:63.99em) {

    .property__description,
    .property__lead {
        padding-right: 25%
    }

    .site-footer__bottom-left {
        justify-content: space-between
    }
}

.site-footer__top svg {
    width: 255px;
    margin: 0 auto 25px;
    padding-bottom: 10px 0 20px;
    display: flex;
    justify-content: center
}

.site-footer_grid {
    display: flex;
    justify-content: center;
    text-align: center
}

.site-footer_grid .logo>svg {
    max-width: 225px;
    width: 100%;
    padding: 0 0 25px;
}

h6.site-footer__label {
    font-size: 16px;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
    color: #fff
}

.site-footer__contact {
    display: flex;
    flex-direction: column
}

.site-footer__client-access a+a,
.site-footer__nav a+a {
    margin-top: 8px
}

.site-footer__address {
    grid-column: 1/span 2
}

.site-footer__address h6 {
    color: #fff;
    text-transform: uppercase;
    font-size: 18px;
    letter-spacing: .3px
}

.site-footer__address address {
    font-size: 17px;
    font-style: initial;
    line-height: 1.31;
    margin-bottom: 50px
}

.footer-legal a,
.site-footer__copyright p,
a.contact {
    font-size: 16px;
    color: #fff
}

.site-footer__client-access a,
.site-footer__fax a,
.site-footer__nav a,
.site-footer__phone a {
    border-bottom: 1px solid #0000;
    transition: opacity .15s linear
}

.site-footer__copyright p {
    margin: 0
}

a.contact {
    letter-spacing: .8px
}

.footer-legal a {
    line-height: 1.2;
    margin: 21px 5px
}

.site-footer__legal-links {
    margin-top: 14px;
    width: 100%
}

@media(min-width:49.375em) {
    .site-footer__legal-links {
        margin-top: 0;
        width: auto
    }
}

.site-footer__ada {
    display: flex;
    justify-self: flex-end;
    margin-top: 14px
}

.site-footer .t-body-xs,
.site-footer .t-eyebrow-m {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin: 0 0 20px;
    letter-spacing: 1px
}

.st0 {
    fill: #00adee
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__logo svg *,
.st1 {
    fill: #fff
}

.st2 {
    fill: #01adee
}

.site-header {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999999
}

.site-header:after,
.site-header:before {
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: background .15s linear;
    width: 100%;
    z-index: 0
}

.site-header__main-nav {
    border-bottom: 1px solid #e6e6e657;
    position: relative;
    transition: border .15s linear;
    z-index: 100
}

.site-header__inner {
    align-items: center;
    display: flex;
    height: 90px;
    justify-content: space-between
}

.site-header__logo {
    width: 100%;
    max-width: 12em
}

.site-header__logo svg {
    width: 100%;
    min-width: 225px;
}

.site-header__logo svg * {
    transition: fill .15s linear
}

.site-header__hamburger {
    cursor: pointer;
    display: block;
    height: 32px;
    position: relative;
    width: 22px
}

.site-header__hamburger span {
    background-color: #fff;
    display: block;
    height: 2px;
    position: absolute;
    transition: opacity .15s linear, transform .5s cubic-bezier(.19, 1, .22, 1), background .15s linear;
    width: 22px
}

.site-header__hamburger span:first-of-type {
    top: 7px
}

.site-header__hamburger span:nth-of-type(2) {
    top: 15px
}

.site-header__hamburger span:nth-of-type(3) {
    bottom: 7px
}

@media (max-width:59.365em) {
    .site-header__nav {
        display: none
    }
}

.site-header__nav .site-header__sub-nav-ctr>a,
.site-header__nav>a {
    border-bottom: 1px solid #0000;
    font-family:var(--font-helvetica-neue);
    display: inline-block;
    font-size: 18px;
    font-weight: 300;
    margin-bottom: -3px;
    margin-right: 25px;
    letter-spacing: 0;
    padding: 40px 0 41px;
    transition: border .15s linear;
    color: #fff
}

.site-header__nav .site-header__sub-nav-ctr>a.--is-active,
.site-header__nav>a.--is-active {
    border-bottom-color: #fff
}

.site-header__sub-nav-ctr {
    display: inline-block;
    margin-right: 25px;
    position: relative
}

@media (min-width:80em) {

    .rtf h1,
    .t-heading-xl {
        font-size: 88px;
        line-height: 1
    }

    .t-heading-l {
        font-size: 72px;
        line-height: 1
    }

    .t-heading-m {
        font-size: 48px
    }

    .form .fui-alert {
        font-size: 24px
    }

    .logo-cta__logo {
        padding: 30px 50px
    }

    .page-header.--two-col .page-header__right {
        padding-right: 6.25%
    }

    .property-filters__heading h2 {
        font-size: 40px
    }

    .property-filters__filters {
        min-width: 33.333%
    }

    .property-grid__header {
        margin-bottom: 72px
    }

    .property-grid__header p {
        margin-bottom: 0
    }

    .property-grid.--team .property-grid__inner {
        grid-template-columns: repeat(8, 1fr);
        grid-gap: 25px
    }

    .property-grid.--team .property-grid__block {
        grid-column: span 2
    }

    .site-header__nav .site-header__sub-nav-ctr>a,
    .site-header__nav>a,
    .site-header__sub-nav-ctr {
        margin-right: 50px
    }
}

.site-header__sub-nav-ctr>a {
    padding-right: 15px !important;
    position: relative;
    color: #fff;
    font-size: 18px
}

.site-header__sub-nav-ctr>a:after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    height: 8px;
    margin-top: -5px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: rotate(45deg);
    width: 8px
}

.site-header__sub-nav {
    display: flex;
    flex-direction: column;
    left: -30px;
    opacity: 0;
    overflow: hidden;
    padding: 30px;
    pointer-events: none;
    position: absolute;
    top: calc(100% + -10px);
    transition: opacity .4s cubic-bezier(.19, 1, .22, 1);
    width: 300px
}

.site-header__sub-nav>a {
    font-size: 19px;
    opacity: 0;
    position: relative;
    transform: translateY(5px);
    transition: opacity .2s linear, transform .5s cubic-bezier(.19, 1, .22, 1);
    transition-delay: 0s;
    letter-spacing: .7px;
    z-index: 1;
    color: #fff
}

.site-header__sub-nav>a span {
    border-bottom: 1px solid #0000;
    pointer-events: none;
    transition: border .2s linear
}

.site-header__sub-nav>a+a {
    margin-top: 15px
}

.site-header__sub-nav-inner {
    background-color: #000;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-100%);
    transition: transform .5s cubic-bezier(.19, 1, .22, 1)
}

.site-header.--is-toggled .mobile-nav,
.team-gallery.--is-visible {
    opacity: 1;
    pointer-events: all
}

.site-header.--is-toggled .mobile-nav__content {
    opacity: 1;
    transform: none
}

.site-header.--is-toggled .site-header__hamburger span:nth-of-type(2) {
    opacity: 0
}

.site-header.--is-toggled .site-header__hamburger span:first-of-type {
    transform: translateY(8px) rotate(-45deg)
}

.site-header.--is-toggled .site-header__hamburger span:nth-of-type(3) {
    transform: translateY(-8px) rotate(45deg)
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) {
    backdrop-filter: blur(2px);
    background-color: initial
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled):after {
    background-color: initial
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__main-nav {
    border-bottom-color: #fff3
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__sub-nav-ctr>a:after {
    border-color: #fff
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__hamburger span,
.slider-project-caption {
    background-color: #fff
}

.project-hero-image h1,
.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__nav>a,
.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__sub-nav-ctr>a,
form .nice-select .current,
form input .current,
form select .current,
form textarea .current,
project-hero-image h2 {
    color: #fff
}

.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__nav>a.--is-active,
.site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__sub-nav-ctr>a.--is-active {
    border-bottom-color: #fff
}

.stats {
    border-top: 1px solid #d9d5d0;
    display: flex;
    flex-wrap: wrap
}

.stats__stat {
    padding-top: 28px;
    width: 100%
}

@media (min-width:49.375em) {
    .property-grid__block {
        grid-column: span 3
    }

    .property-grid.--team {
        padding-bottom: 96px
    }

    .property-pagination__page {
        width: 33.333%
    }

    .property-pagination__page-icon {
        height: 40px;
        width: 40px
    }

    .property-thumb {
        aspect-ratio: 6/7;
        padding: 32px
    }

    .property__name {
        padding-top: 60px
    }

    .property__name h6+h1 {
        margin-top: 18px
    }

    .property__address-and-stat {
        margin-bottom: 96px;
        margin-top: 48px;
        width: 87.5%
    }

    .property__address,
    .property__stat {
        padding-top: 32px
    }

    .property__overview {
        display: block;
        grid-column: span 8;
        padding: 60px 0;
        position: relative
    }

    .site-footer__legal p {
        width: 62.5%
    }

    .site-footer__client-access a+a,
    .site-footer__nav a+a {
        margin-top: 16px
    }

    .stats {
        border: none
    }

    .stats__stat {
        border-top: 1px solid #d9d5d0;
        padding-right: 3.5%;
        padding-top: 32px;
        width: 25%
    }
}

.stats__stat-description {
    margin-top: 8px
}

.team_grid__inner {
    grid-gap: 20px;
    width: 100%;
    padding: 20px;
    display: grid;
    margin: 0 auto 3em
}

p.team_title {
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1.2px
}

.team-gallery {
    flex-wrap: wrap;
    height: 100vh;
    left: 0;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: opacity .2s linear;
    width: 100vw;
    z-index: 9999
}

.team-gallery__header .property-pagination {
    padding: 0;
    width: 100%;
    color: #000
}

.team-gallery__gallery {
    height: calc(100vh - 72px);
    width: 100%;
    padding-top: 0
}

.team-gallery__slide {
    display: flex;
    flex-wrap: wrap;
    height: calc(100vh - 72px);
    justify-content: space-between;
    overflow-y: auto;
    width: 100vw
}

.team-gallery__slide p {
    font-size: 21px;
    line-height: 1.35;
    letter-spacing: 0
}

.team-gallery__text {
    padding-bottom: 32px
}

.team-gallery__text h2 {
    font-size: clamp(37px, 3vw, 40px);
    margin-bottom: 0
}

.team-gallery__text h5 {
    font-size: clamp(35px, 3vw, 30px);
    margin-bottom: 0;
    letter-spacing: 0
}

.team-gallery__text h3 {
    font-size: 22px;
    letter-spacing: 0
}

.team-gallery__bio {
    border-top: 1px solid #eee;
    margin: 20px 0;
    padding-top: 25px;
    padding-bottom: 2em
}

.team-gallery__headshot {
    min-height: 300px
}

@media (max-width:63.99em) {
    .page-header__featured-link-icon {
        margin-right: 0
    }

    .page-header__featured-link-icon svg {
        height: auto;
        width: 10px
    }

    .page-header__featured-link-text,
    .site-footer__bg {
        display: none
    }

    .team-gallery__text {
        padding: 0 5vw
    }

    .team-gallery__headshot {
        height: 500px;
        margin-bottom: 100px
    }
}

@media (min-width:64em) and (max-width:59.365em) {
    .team-gallery__headshot {
        height: calc(100vh - 240px);
        min-height: 600px
    }
}

.team-gallery__headshot img {
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
    margin-top: 82px
}

@media (min-width:59.375em) {

    .team-gallery__gallery,
    .team-gallery__slide {
        height: calc(100vh - 144px)
    }

    .mobile-nav,
    .site-header__hamburger {
        display: none
    }

    .page-header {
        margin-top: 100px
    }

    .team-gallery__header {
        align-items: center;
        width: 100%;
        z-index: 3;
        position: relative;
        display: block;
        opacity: 1;
        top: 90px
    }

    .team-gallery__gallery {
        padding-top: 7em
    }

    .team-gallery__headshot {
        height: calc(100vh - 240px);
        min-height: 600px
    }

    .team-gallery__headshot img {
        margin-top: 0
    }
}

.team-thumb {
    align-content: flex-end;
    align-items: flex-end;
    aspect-ratio: 3/4;
    cursor: pointer;
    display: flex;
    overflow: hidden;
    padding: 24px;
    position: relative
}

.focus-content svg,
.team-thumb__text svg {
    bottom: 2px;
    height: 15px;
    position: absolute;
    right: 0;
    width: 15px
}

.team-thumb__text svg * {
    stroke-width: 1.5 !important
}

.team-bioimage.--no-headshot:after {
    bottom: 0;
    content: "";
    position: absolute;
    top: 0;
    width: 100%
}

.team-bioimage:before {
    background: linear-gradient(0deg, #000000a6, #0000);
    bottom: 0;
    content: "";
    height: 40%;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 2
}

.focus-type img,
.team-bioimage img {
    bottom: -2px;
    height: calc(100% + 4px);
    max-height: 200%;
    max-width: 200%;
    object-position: center top;
    position: absolute;
    right: -2px;
    transform-origin: top center;
    transition: transform 2s cubic-bezier(.19, 1, .22, 1), filter .15s linear;
    width: calc(100% + 4px);
    z-index: 1
}

.team-thumb__text {
    position: relative;
    color: #fff;
    width: 100%;
    padding-bottom: 0;
    z-index: 3
}

.team-thumb__heading {
    font-size: 32px;
    line-height: 1.1;
    margin: 0;
    padding-bottom: 5px;
    letter-spacing: .01px
}

.two-col-text__footer {
    margin-top: 40px
}

.two-col-text .rtf p {
    color: #595755
}

@media (min-width:64em) {
    .property-grid__header {
        margin-bottom: 60px
    }

    .property-grid__block {
        grid-column: span 2
    }

    .property-grid__pattern {
        width: calc(35vw - 7px)
    }

    .property-grid.--team {
        margin-top: 0;
        padding-bottom: 160px
    }

    .property__meta {
        grid-column: span 7;
        margin-top: -140px !important;
        padding-bottom: 96px
    }

    .property__name {
        padding-top: 80px
    }

    .property__stat {
        padding-left: 32px
    }

    .property__overview {
        grid-column: span 9;
        padding: 80px 6.25% 96px
    }

    .property__gallery-btn {
        bottom: 96px;
        left: 0;
        position: absolute
    }

    .site-footer__bottom-left {
        width: 50%
    }

    .site-footer__top svg,
    .site-footer_grid {
        display: block;
        justify-content: start;
        text-align: left
    }

    .site-footer__ada {
        justify-content: flex-end;
        margin-top: 0;
        width: 40%
    }

    .site-header__nav .site-header__sub-nav-ctr>a,
    .site-header__nav>a {
        font-size: 19px;
        margin-bottom: -1px;
        color: #fff
    }

    .site-header__sub-nav {
        top: calc(100% + -17px)
    }

    .stats__stat {
        width: 18.75%
    }

    .team-gallery__slide {
        overflow: hidden;
        padding-left: 5vw;
        width: 90vw
    }

    .team-gallery__headshot,
    .team-gallery__text {
        width: 39.5vw
    }

    .team-gallery__text {
        width: 43vw;
        height: calc(100vh - 240px);
        overflow-y: auto;
        padding-right: 50px
    }

    .team-gallery__text::-webkit-scrollbar {
        background: #fff;
        height: 2px;
        width: 4px
    }

    .team-gallery__text::-webkit-scrollbar-thumb {
        background: #a6a39f
    }

    .team-gallery__text::-webkit-scrollbar-corner {
        background: #fff
    }

    .two-col-text__full {
        grid-column: span 16
    }

    .two-col-text.--larger-left-col .two-col-text__left {
        padding-right: 0
    }

    .two-col-text.--larger-left-col .two-col-text__right {
        grid-column: 10/span 6
    }

    .two-col-text.--larger-right-col .two-col-text__left {
        grid-column: span 4;
        padding-right: 0
    }

    .two-col-text.--larger-right-col .two-col-text__right {
        grid-column: 6/span 12
    }
}

svg.close-modal {
    width: 24px;
    position: absolute;
    right: 4%;
    top: 17px;
    opacity: 1 !important;
    fill: #000
}

.featured-item {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    color: inherit
}

@media (min-width:892px) {
    .featured-item:first-child {
        flex-basis: calc(62% - 10px)
    }

    .featured-item:nth-child(2) {
        flex-basis: calc(38% - 10px)
    }

    .featured-item:nth-child(n+3) {
        flex-basis: calc(33.333% - 14px)
    }

    .featured-item {
        margin-bottom: 1em
    }
}

.featured-item__media-container {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 32vw;
    min-height: 400px;
    max-height: 500px
}

.featured-item__media-container img,
.featured-item__video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    will-change: opacity, transform;
    transition: opacity 1s ease-in-out, transform 1s ease-in-out
}

.featured-item__video {
    opacity: 0;
    z-index: -1;
    transition: opacity 1s ease-in-out
}

.featured-item:hover .featured-item__media-container img {
    opacity: .6;
    transform: scale(1.05)
}

.featured-item:hover .featured-item__video {
    opacity: 1;
    z-index: 2;
    pointer-events: auto;
    transition: opacity 1s ease-in-out;
    transform: scale(1.05)
}

.featured-item__media-container:not(:hover) .featured-item__media-container img {
    opacity: 1;
    transform: scale(1)
}

.featured-item__media-container:not(:hover) .featured-item__video {
    opacity: 0;
    transform: scale(1);
    transition: opacity 1s ease-in-out
}

.portfolio-grid .featured-item__media-container {
    height: 100%;
    min-height: 400px
}

.featured-item {
    position: relative;
    margin-bottom: 0;
    width: 100%;
    overflow: hidden;
    color: inherit
}

.featured-item__text-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    text-align: center;
    padding: 10px 0 20px;
}

@media (min-width: 992px) {
    .featured-item__text-container {
        text-align: left;
    }
}


.featured-item__text-container h3 {
	font-family: 'HelveticaNeueRoman', arial, sans-serif;
    margin-bottom: 5px;
}

.featured-item__text-container h4 {
    text-transform: uppercase;
    font-size: 15px;
    letter-spacing: 1.7px;
    margin: 0 0 20px;
	font-family: 'HelveticaNeueRoman', arial, sans-serif;
}

.featured-properties-container h2 {
    font-size: clamp(2.283em, 2vw + 1rem, 2em);
    margin: 0;
}

.portfolio-grid .featured-item::after {
    content: "";
    display: block;
    height: 2px;
    width: 0;
    background: #fff;
    transition: width .3s
}

.featured-item:hover img,
.project-gridx3 .project-item:focus img,
.project-gridx3 .project-item:hover img,
.sbe_portfolio-grid .sbe_portfolio-item:focus img,
.sbe_portfolio-grid .sbe_portfolio-item:hover img {
    transform: scale(1.1)
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1;
        visibility: visible;
        z-index: 9999
    }

    to {
        opacity: 0;
        visibility: hidden;
        z-index: -1
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
        visibility: visible;
        z-index: 9999
    }

    to {
        opacity: 0;
        visibility: hidden;
        z-index: -1
    }
}

@keyframes header-reveal {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h3,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
}

nav ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

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



ins,
mark {
    background-color: #ff9;
    color: #000
}

mark {
    font-weight: 700
}

del {
    text-decoration: line-through
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

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

hr {
    box-sizing: initial;
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    background: 0 0
}

input,
select {
    vertical-align: middle
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
    transition: none
}

.btn-dark-main-arrow,
.btn-darkheight-main-arrow,
.btn-lightborder-white-arrow,
.btn-outline-white-arrow,
.btn-primary-dark-arrow,
.btn-primary-white-arrow {
    line-height: 1.5rem;
    transition: right .5s, width .5s, background-size .5s ease-in-out;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    opacity: 1;
    cursor: pointer
}

.screen-reader-text.skip-link:focus {
    clip: auto !important;
    -webkit-clip-path: none;
    clip-path: none;
    left: 10px;
    top: 10px;
    z-index: 100000;
    display: inline-block;
    height: auto;
    width: auto;
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 1px;
    cursor: pointer;
    text-transform: uppercase;
    min-width: 100px;
    text-align: center;
    padding: 13px 35px;
    line-height: 1;
    border: 1.5px solid #dc3304;
    background: #dc3304;
    color: #fff;
    border-radius: 23px
}

.btn-primary-dark-arrow {
    justify-content: center;
    height: 65px;
    border-radius: 5px;
    color: #fff;
    background: #000;
    text-transform: uppercase;
    font-family: arial;
    width: 340px;
    border: 0;
    max-width: 100%;
    transform: translateY(0);
    margin: 0 auto;
    display: flex;
    justify-content: center
}

.btn-primary-dark-arrow .button__text {
    transition: .3s ease-in-out;
    letter-spacing: 1px;
    align-content: center;
    align-items: center;
    display: flex
}

.btn-dark-main-arrow .button__icon_arrow,
.btn-darkheight-main-arrow .button__icon_arrow,
.btn-primary-dark-arrow .button__icon_arrow {
    margin-left: 24px;
    transition: .3s ease-in-out;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.btn-dark-main-arrow,
.btn-darkheight-main-arrow {
    justify-content: center;
    text-transform: capitalize;
    color: #fff;
    background: #000;
    font-size: 19px;
    text-decoration: none;
    letter-spacing: 0
}

.btn-primary-dark-arrow .button__icon_arrow:before {
    content: "";
    display: flex;
    border: 0;
    transition: .5s ease-in-out;
    right: 1px;
    width: 100%;
    -o-transform: 0;
    transform: 0;
    border-color: inherit;
    border-top: 1px solid;
    position: absolute;
    top: 50%
}

.btn-dark-main-arrow .button__icon_arrow:after,
.btn-primary-dark-arrow .button__icon_arrow:after {
    content: "";
    display: block;
    border: none;
    width: 8px;
    height: 8px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    transform: rotate(-45deg);
    position: absolute;
    right: 2px;
    border-color: inherit
}

.btn-dark-main-arrow:hover .button__icon_arrow,
.btn-lightborder-white-arrow:hover .button__icon_arrow,
.btn-outline-white-arrow:hover .button__icon_arrow,
.btn-primary-dark-arrow:hover .button__icon_arrow,
.btn-primary-white-arrow:hover .button__icon_arrow {
    transition: .3s ease-in-out
}

.btn-dark-main-arrow.button--lrg svg,
.btn-primary-dark-arrow.button--lrg svg {

    -o-transform: scale(.7);
    transform: scale(.7)
}

.btn-dark-main-arrow.button--lrg:hover .button__icon_arrow,
.btn-lightborder-white-arrow.button--lrg:hover .button__icon_arrow,
.btn-outline-white-arrow.button--lrg:hover .button__icon_arrow,
.btn-primary-dark-arrow.button--lrg:hover .button__icon_arrow,
.btn-primary-white-arrow.button--lrg:hover .button__icon_arrow {
    width: 2.8125rem;
    background-position: 0
}

.btn-dark-main-arrow {
    height: 63px;
    border-radius: 5px;
    width: 100%;
    max-width: 325px;
    border: 0;
    margin: 0 auto;
    display: flex
}

.btn-dark-main-arrow .button__text,
.btn-darkheight-main-arrow .button__text {
    transition: .3s ease-in-out;
    align-content: center;
    align-items: center;
    display: flex;
    text-transform: capitalize;
    letter-spacing: 0;
    font-size: 18px;
    font-family: 'HelveticaNeueRoman', arial, sans-serif;
}

.btn-dark-main-arrow .button__icon_arrow:before {
    content: "";
    display: flex;
    border: 0;
    transition: .5s ease-in-out;
    right: 1px;
    width: 100%;
    transform: 0;
    border-color: inherit;
    border-top: 1px solid;
    position: absolute;
    top: 50%
}

.btn-darkheight-main-arrow {
    height: 67px;
    border-radius: 5px;
    width: 100%;
    max-width: 290px;
    border: 0;
    transform: translateY(0);
    margin: 0 auto;
    display: flex
}

.btn-darkheight-main-arrow .button__icon_arrow:before {
    content: "";
    display: flex;
    border: 0;
    transition: .5s ease-in-out;
    right: 1px;
    width: 100%;
    -o-transform: 0;
    border-color: inherit;
    border-top: 1px solid;
    position: absolute;
    top: 50%
}

.btn-lightborder-white-arrow,
.btn-outline-white-arrow,
.btn-primary-white-arrow {
    height: 65px;
    width: 340px;
    max-width: 340px;
    transform: translateY(0);
    margin: 0 auto;
    text-decoration: none
}

.btn-darkheight-main-arrow .button__icon_arrow:after {
    content: "";
    display: block;
    border: 0;
    width: 8px;
    height: 8px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    transform: rotate(-45deg);
    position: absolute;
    right: 2px;
    border-color: inherit
}

.btn-outline-white-arrow,
.btn-primary-white-arrow {
    border-radius: 5px;
    font-size: 18px;
    display: flex;
    text-transform: uppercase
}

.btn-primary-white-arrow {
    justify-content: center;
    color: #000;
    background: 0 0;
    border: 1px solid #000;
    font-family: arial;
    justify-content: center
}

.btn-lightborder-white-arrow .button__text,
.btn-outline-white-arrow .button__text,
.btn-primary-white-arrow .button__text {
    transition: .5s ease-in-out;
    letter-spacing: 1px;
    align-content: center;
    align-items: center;
    font-weight: 600;
    display: flex
}

.btn-primary-white-arrow .button__icon_arrow {
    margin-left: 24px;
    transition: .5s ease-in-out;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000
}

.btn-lightborder-white-arrow .button__icon_arrow:before,
.btn-outline-white-arrow .button__icon_arrow:before,
.btn-primary-white-arrow .button__icon_arrow:before {
    content: "";
    display: flex;
    border: 0;
    transition: .5s ease-in-out;
    right: 1px;
    width: 100%;
    transform: 0;
    border-color: inherit;
    border-top: 1px solid;
    position: absolute;
    top: 50%
}

.btn-lightborder-white-arrow .button__icon_arrow:after,
.btn-outline-white-arrow .button__icon_arrow:after,
.btn-primary-white-arrow .button__icon_arrow:after {
    content: "";
    display: block;
    border: none;
    width: 8px;
    height: 8px;
    border-right: 1px solid;
    border-bottom: 1px solid;
    transform: rotate(-45deg);
    position: absolute;
    right: 2px;
    border-color: inherit
}

.btn-lightborder-white-arrow.button--lrg svg,
.btn-outline-white-arrow.button--lrg svg,
.btn-primary-white-arrow.button--lrg svg {
    transform: scale(.7)
}

.btn-outline-white-arrow {
    justify-content: center;
    background: #000;
    color: #fff;
    border: 1px solid #000;
    justify-content: center
}

.btn-lightborder-white-arrow .button__icon_arrow,
.btn-outline-white-arrow .button__icon_arrow {
    margin-left: 24px;
    transition: .5s ease-in-out;
    vertical-align: middle;
    position: relative;
    overflow: hidden;
    width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff
}

.btn-lightborder-white-arrow {
    justify-content: center;
    border-radius: 5px;
    background: 0 0;
    color: #fff;
    border: 1px solid #fff;
    text-transform: capitalize;
    font-size: 19px;
    letter-spacing: 0;
    display: flex;
    justify-content: center
}

.col,
.col-auto {
    max-width: 100%
}

section {
    display: block;
    position: relative;
    width: calc(100vw - (100vw - 100%))
}

form label {
    color: #fff;
    opacity: 1
}

form label.error {
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    position: relative;
    color: #fff;
    top: 5px
}

form .nice-select,
form input,
form select,
form textarea {
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .5);
    background: 0 0;
    width: 100%;
    border-radius: 0;
    resize: none;
    transition: border .35s ease-in-out
}

img.splide_slider,
video.splide-video,
video.splide_slider {
    transition: opacity 150ms ease-in, filter 150ms ease-in;
    object-fit: cover
}

form .nice-select .option,
form input .option,
form label,
form select .option,
form textarea .option {
    font-size: 14px
}

form .nice-select:focus,
form input:focus,
form select:focus,
form textarea:focus {
    border-bottom: 1px solid #fff
}

form .nice-select:-webkit-autofill,
form input:-webkit-autofill,
form select:-webkit-autofill,
form textarea:-webkit-autofill {
    -webkit-text-fill-color: #000;
    -webkit-box-shadow: 0 0 0 1000px #000 inset
}

form button {
    border: 0;
    background: 0 0;
    cursor: pointer;
    appearance: none
}

::-webkit-input-placeholder {
    color: #000;
    opacity: 1
}

:-ms-input-placeholder {
    color: #000;
    opacity: 1
}

::-moz-placeholder {
    color: #000;
    opacity: 1
}

::placeholder {
    opacity: 1
}

.radio-item {
    display: inline-block;
    margin-left: 30px;
    user-select: none;
    margin-top: 7px
}

.radio-item label .checkmark,
.radio-item label .checkmark:after {
    border-radius: 100%
}

.radio-item label .checkmark {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    height: 18px;
    width: 18px;
    background: 0 0;
    border: 1px solid rgba(255, 255, 255, .5)
}

.radio-item label .checkmark:after {
    content: "";
    position: absolute;
    display: none;
    left: 3px;
    top: 3px;
    width: 10px;
    height: 10px;
    background: #fff
}

.radio-item label .radio-label {
    display: inline-block;
    vertical-align: middle;
    padding-left: 5px;
    width: calc(100% - 18px);
    font-size: 14px;
    text-transform: uppercase;
    font-style: normal;
    color: #fff;
    opacity: 1
}

.radio-item label:focus input:not(:disabled)~.checkmark,
.radio-item label:hover input:not(:disabled)~.checkmark {
    border: 1px solid #fff
}

.radio-item label input {
    opacity: 0;
    cursor: pointer;
    height: 1px;
    width: 1px;
    position: absolute;
    left: 10px;
    top: 10px
}

.input-container {
    border-bottom: 1px solid rgba(255, 255, 255, .5);
    padding-bottom: 10px
}

.input-item {
    display: inline-block;
    -ms-user-select: none;
    user-select: none
}

.input-item label {
    cursor: pointer;
    position: relative;
    margin-left: 14px;
    display: block;
    text-transform: uppercase;
    font-style: normal;
    border-radius: 50px
}

.input-item label input {
    cursor: pointer;
    position: absolute;
    left: 110%;
    top: 50%;
    border: 0;
    transform: translateY(-50%)
}

.input-item label input::-webkit-file-upload-button {
    display: none
}

.input-item label input::file-selector-button {
    display: none
}

.container-inner-header {
    width: 100%;
    padding: 0;
    margin: -2.1em 0
}

.container-inner-header h1 {
	letter-spacing: 0;
}

.container-v {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 0 60px
}

section.container>div {
    width: 100%;
    padding: 0
}

.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 2vw;
    padding-left: 2vw
}

.col {
    flex-basis: 0;
    flex-grow: 1
}

.col-auto {
    position: relative;
    padding-right: 2vw;
    padding-left: 2vw;
    flex: 0 0 auto;
    width: auto
}

.col-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%
}

.col-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%
}

.col-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%
}

.col-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%
}

@media (max-width:768px) {
    .video-container {
        padding-bottom: 75%
    }

    .heading-space {
        padding: 4em 2em 5.5em
    }
}

@media (min-width:768px) {
    .offset-md-1 {
        margin-left: 8.33333333%
    }

    .offset-md-2 {
        margin-left: 16.66666667%
    }

    .offset-md-3 {
        margin-left: 25%
    }

    .offset-md-4 {
        margin-left: 33.333333%
    }

    .offset-md-5 {
        margin-left: 41.66666667%
    }

    .offset-md-6 {
        margin-left: 50%
    }

    .offset-md-7 {
        margin-left: 58.333333%
    }

    .offset-md-8 {
        margin-left: 66.666667%
    }

    .offset-md-9 {
        margin-left: 75%
    }

    .offset-md-10 {
        margin-left: 83.333333%
    }

    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-md-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .col-md-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-md-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }

    .col-md-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-md-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }
}

.justify-content-center {
    justify-content: center !important
}

.align-items-center {
    align-items: center !important
}

.flex-center,
.swiper-full .swiper-wrapper {
    display: flex;
    align-items: center
}

.pb-20vh {
    padding-bottom: 20vh !important
}

.pb-40vh {
    padding-bottom: 40vh !important
}

.black_bg,
.main-home-container,
.news--insights-header,
.theme-black,
div.s--black,
div.s--dark,
section.s--black,
section.s--dark {
    background: #000;
    color: #fff
}

.primary:hover,
div.s--light,
div.s--light *,
div.s-light,
section.s--light,
section.s--light * {
    background: #fff;
    color: #000
}

section.s--light {
    background: #e9eaea
}

section.s--pt-0 div {
    padding-top: 0
}

figure .wp-block-image size-full,
section.s--pb-0 div {
    padding-bottom: 0
}

.container.c--wide {
    max-width: 85%;
    width: 100%
}

@media (max-width:660px) {
    .pad-intro {
        padding: 4.5 5em
    }
}

@media (max-width:960px) {
    .container.c--wide {
        padding-left: 20px;
        padding-right: 20px
    }
}

.d-inline,
a[data-filter=retail].retail-active {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-flex {
    display: flex !important
}


.w-25 {
    width: 25% !important
}

.w-50 {
    width: 50% !important
}

.w-75 {
    width: 75% !important
}

.w-100 {
    width: 100% !important
}

.w-auto {
    width: auto !important
}

.h-25 {
    height: 25% !important
}

.h-50 {
    height: 50% !important
}

.h-75 {
    height: 75% !important
}

.h-auto {
    height: auto !important
}

.mw-100 {
    max-width: 100% !important
}

.mh-100 {
    max-height: 100% !important
}

.min-vw-100 {
    min-width: 100vw !important
}

.min-vh-100 {
    min-height: 100vh !important
}

.vw-100 {
    width: 100vw !important
}

.vh-100 {
    height: 100vh !important
}

a:focus-visible,
button:focus-visible {
    outline-offset: 2px;
    outline: #fff solid 2px
}

.btn:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 .2rem #fff
}

.display-1 {
    font-size: 72px;
    font-weight: 700
}

@media (max-width:1480px) {
    .display-1 {
        font-size: 57.6px
    }
}

@media (max-width:959.98px) {
    .display-1 {
        font-size: 47.952px
    }
}

@media (max-width:459.98px) {
    .display-1 {
        font-size: 32.4px
    }
}

.page-template-page-home .heading h2 {
    font-size: clamp(2em, 2vw + 1rem, 2em);
    display: flex;
    justify-content: center;
    font-family: "HelveticaNeueLT", arial, sans-serif;
    font-weight: 400;
}

.page-template-page-mixed-use .container-projects,
.page-template-page-multifamily .container-projects,
.page-template-page-office .container-projects {
    padding-top: 3em
}

.heading h2 {
    display: flex;
    justify-content: start;
    font-weight: 400
}

.home-feature-content h2 {
    display: flex;
    flex-direction: column;
    justify-content: center
}

p.location-address {
    margin-bottom: 10px
}

.section-description .section-container>:last-child,
p.view-location {
    margin-bottom: 0
}

.video--wrap>video {
    width: 100%;
    padding: 0 20px;
    min-height: 500px
}

video.single-project-content {
    height: 100%;
    max-height: 550px
}

video.video-project-content {
    width: 100%;
    height: 100%;
    max-height: 600px
}

.project-head img {
    height: 100%;
    min-height: 560px
}

.footer-fullwidth,
img.fullwidthspecial,
video.fullwidthspecial {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    max-height: 800px;
    object-fit: cover;
    object-position: bottom;
}

.footer-fullwidth:before,
img.fullwidthspecial:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: rgba(0, 0, 0, .4);
    z-index: 2
}

div#overlay-statement {
    display: flex;
    font-size: 33px;
    z-index: 3;
    text-transform: capitalize;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    height: 100%
}

div#overlay-statement h2 {
    text-align: center;
    text-transform: capitalize;
    margin: 2rem auto 3rem;
    color: #fff;
    mix-blend-mode: luminosity;
    max-width: 80%;
    font-size: 33px;
    padding: 6em 0;
    font-weight: 100
}

@media (min-width:767px) {
    .footer-legal a {
        margin: 21px 10px
    }

    .team_grid__inner {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 25px;
        padding-bottom: 5em
    }

    .portfolio-grid .featured-item__media-container {
        min-height: 420px
    }

    div#overlay-statement h2 {
        max-width: 50%;
        font-size: 33px;
        padding: 8em 0
    }
}

.grid_project_container {
    display: grid;
    padding: 10px
}

.projects-main img,
.projects-main>video {
    height: 100%;
    width: 100%;
    min-height: 640px;
    object-fit: cover;
    margin-top: 30px;
    object-position: 50% 94%
}

.project_mediablock img.image-mediablock,
.project_mediablock video.video-mediablock {
    width: 100%;
    height: 100%;
    max-height: 600px;
    object-fit: cover
}

.splide__slide.is-active img,
img.splide_slider,
video.splide_slider {
    max-height: 700px;
    min-height: 700px
}

.news-wrapper .swiper-wrapper,
.project-col-item,
.project-col-item-one {
    padding-bottom: 3em
}

.text-right {
    text-align: right
}

.text-light {
    font-weight: 200
}

.rounded-circle {
    border-radius: 50% !important
}

.row div:first-child h2 {
    margin-top: -6px
}

section._light {
    background-color: #e9eaea
}

._dark,
section._dark,
section._dark ._hidecircle {
    background-color: #3d3d42
}

.fpo {
    color: #f0f !important
}

.btn-lg {
    padding-left: 20px;
    margin-left: 12px;
    font-size: 24px;
    text-transform: none;
    letter-spacing: 0
}

.btn-lg::before {
    width: 24px;
    height: 17px;
    background-size: cover
}

@media (max-width:959.98px) {
    .btn-lg {
        font-size: 18px
    }
}

.nice-select .list,
body:not(.home) header>div:last-of-type,
header.fixed>div:last-of-type {
    background: #fff
}

header div:last-of-type>div:last-of-type>div {
    border: 0;
    padding-right: 0
}

header .legacy_announcement {
    background: #3d3d42 !important
}

h1 em,
h2 em {
    font-size: 1em
}

.pd-offcanvas-dots {
    float: right;
    width: 100%;
    height: 260px;
    padding-left: 9999px;
    padding-right: 2vw;
    position: relative;
    background-image: url(../images/grfx-dot-bg.png);
    background-repeat: repeat-x;
    background-size: 300px auto;
    background-position: right center;
    overflow: visible;
    margin-bottom: 2rem;
    line-height: 1
}

.nice-select .option {
    padding: 1em 1em .875em;
    line-height: 1;
    color: #000;
    border-color: #bebfc0
}

.nice-select .option.disabled {
    color: #000;
    background-color: #bebfc0;
    font-weight: 700
}

.sbe_portfolio-item.hidden,
a[data-filter=retail] {
    display: none !important
}

.black,
.lg-toolbar .lg-icon,
.project-gridx3 .project-item .project-item__text-container span {
    color: #000 !important
}

@media (min-width:720px) and (max-width:1379.98px) {
    .container-slider {
        padding: 0 69px
    }
}

@media (min-width:1380px) {
    .d-xl-none {
        display: none !important
    }

    .d-xl-inline {
        display: inline !important
    }

    .d-xl-inline-block {
        display: inline-block !important
    }

    .d-xl-block {
        display: block !important
    }

    .d-xl-flex {
        display: flex !important
    }

    .m-xl-0 {
        margin: 0 !important
    }

    .mt-xl-0,
    .my-xl-0 {
        margin-top: 0 !important
    }

    .mr-xl-0,
    .mx-xl-0 {
        margin-right: 0 !important
    }

    .mb-xl-0,
    .my-xl-0 {
        margin-bottom: 0 !important
    }

    .ml-xl-0,
    .mx-xl-0 {
        margin-left: 0 !important
    }

    .m-xl-1 {
        margin: 1rem !important
    }

    .mt-xl-1,
    .my-xl-1 {
        margin-top: 1rem !important
    }

    .mr-xl-1,
    .mx-xl-1 {
        margin-right: 1rem !important
    }

    .mb-xl-1,
    .my-xl-1 {
        margin-bottom: 1rem !important
    }

    .ml-xl-1,
    .mx-xl-1 {
        margin-left: 1rem !important
    }

    .m-xl-2 {
        margin: 2rem !important
    }

    .mt-xl-2,
    .my-xl-2 {
        margin-top: 2rem !important
    }

    .mr-xl-2,
    .mx-xl-2 {
        margin-right: 2rem !important
    }

    .mb-xl-2,
    .my-xl-2 {
        margin-bottom: 2rem !important
    }

    .ml-xl-2,
    .mx-xl-2 {
        margin-left: 2rem !important
    }

    .m-xl-3 {
        margin: 4rem !important
    }

    .mt-xl-3,
    .my-xl-3 {
        margin-top: 4rem !important
    }

    .mb-xl-n6,
    .my-xl-n6 {
        margin-bottom: -10.65rem !important
    }

    .ml-xl-n6,
    .mx-xl-n6 {
        margin-left: -10.65rem !important
    }

    .m-xl-auto {
        margin: auto !important
    }

    .mt-xl-auto,
    .my-xl-auto {
        margin-top: auto !important
    }

    .mr-xl-auto,
    .mx-xl-auto {
        margin-right: auto !important
    }

    .mb-xl-auto,
    .my-xl-auto {
        margin-bottom: auto !important
    }

    .ml-xl-auto,
    .mx-xl-auto {
        margin-left: auto !important
    }

    .container-slider {
        padding: 0 calc(300px + 5vw);
        margin-right: -20px
    }
}

footer .footer-office-locations {
    column-count: 1 !important
}

footer .footer-office-locations a {
    font-size: 18px;
    font-weight: 700
}

@media (max-width:719.98px) {
    footer>div {
        padding-right: 0;
        padding-left: 0
    }
}

.margins-mobile {
    padding: 30px 30px 5em
}

.home_intro-content .container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0
}

.home_intro-content {
    padding-bottom: 3.5em
}

.home_intro-content p {
    font-size: 22px;
    line-height: 1.31em
}

.home_intro-content h2 {
    font-size: 35px;
    line-height: 1;
    letter-spacing: 1px;
    margin: 0 0 30px;
    font-weight: 300
}

.splide-slider-container {
    position: relative;
    height: 100%
}

.splide {
    height: 100%;
    width: 100%
}

.splide__slide {
    border-radius: .25rem;
    border: 0 solid #000;
    overflow: hidden
}

.approach-sectors .splide__pagination {
    bottom: -1em !important
}

img.splide_slider,
video.splide_slider {
    display: block
}

.splide__slide.is-active img {
    filter: saturate(1.1) brightness(110%) contrast(1.1);
    opacity: 1
}

.my-carousel-progress {
    boackground: #000;
    margin: .25rem
}

.my-carousel-progress-bar {
    background: #000;
    height: 2px;
    transition: width .4s;
    width: 0
}

.splide__pagination {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: .25rem
}

.splide__pagination li {
    margin: 0;
    padding: 0;
    line-height: 0
}

.splide__pagination__page {
    border-radius: 100vw;
    background: #888;
    transition: transform 150ms ease-in, width 150ms ease-in
}

.splide__pagination__page.is-active {
    width: 24px;
    border-radius: 100vw;
    background: #000;
    transform: scale(1.1);
    transform-position: center;
    opacity: 1
}

.splide__arrow {
    width: 2rem;
    height: 2rem;
    background-color: transparent
}

.splide__arrow svg {
    width: 2rem;
    height: 2rem;
    fill: #fff
}

video.splide-video {
    max-height: 75vh;
    min-height: 75vh
}

.splide-content {
    position: absolute;
    z-index: 6;
    bottom: 9%;
    color: #fff;
    padding: 60px 60px 10px;
    max-width: 80%
}

.splide-content h2 {
    text-transform: uppercase;
    font-size: 29px;
    font-weight: 500;
    position: relative;
    letter-spacing: 2px
}

.splide-content p {
    text-transform: none;
    font-size: 22px;
    font-weight: 500;
    letter-spacing: .332px;
    position: relative
}

.splide_overlay,
.team-item {
    position: relative;
    overflow: hidden
}

.splide-carousel {
    margin: 0 0 5em;
}

.splide_overlay:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: rgba(0, 0, 0, .6);
    z-index: 2
}

.portfolio-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    width: 100%;
    margin: 0 auto;
    padding: 1.8em 15px 2em
}

.project-gridx3,
.sbe_portfolio-grid {
    display: grid;
    grid-template-columns: 1fr;
    column-gap: 20px;
    row-gap: 32px
}

.sbe_portfolio-grid .sbe_portfolio-item {
    width: 100%;
    color: #000;
    position: relative;
    padding-bottom: 1.5em
}

.sbe_portfolio-grid .sbe_portfolio-item .sbe_portfolio-item__image-container {
    width: 100%;
    height: 0;
    padding-bottom: 110%;
    position: relative;
    overflow: hidden;
    background: #f5f5f5
}

.sbe_portfolio-grid .sbe_portfolio-item .sbe_portfolio-item__image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    overflow: hidden;
    transition: .6s
}

.project-gridx3 .project-item::after,
.sbe_portfolio-grid .sbe_portfolio-item::after {
    content: "";
    display: block;
    bottom: 0;
    left: 0;
    height: 2px;
    width: 0;
    background: #fff;
    transition: .3s
}

.sbe_portfolio-item.hidden {
    opacity: 0;
    transform: scale(.95)
}

@media (min-width:960px) {

    .offset-lg-1 {
        margin-left: 8.33333333%
    }

    .offset-lg-2 {
        margin-left: 16.66666667%
    }

    .offset-lg-3 {
        margin-left: 25%
    }

    .offset-lg-4 {
        margin-left: 33.333333%
    }

    .offset-lg-5 {
        margin-left: 41.66666667%
    }

    .offset-lg-6 {
        margin-left: 50%
    }

    .offset-lg-7 {
        margin-left: 58.333333%
    }

    .offset-lg-8 {
        margin-left: 66.666667%
    }

    .offset-lg-9 {
        margin-left: 75%
    }

    .offset-lg-10 {
        margin-left: 83.333333%
    }

    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%
    }

    .col-lg-2 {
        flex: 0 0 16.66666667%;
        max-width: 16.66666667%
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%
    }

    .col-lg-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%
    }

    .col-lg-5 {
        flex: 0 0 41.66666667%;
        max-width: 41.66666667%
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%
    }

    .col-lg-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%
    }

    .col-lg-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%
    }

    .col-lg-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%
    }

    .d-lg-none {
        display: none !important
    }

    .d-lg-inline {
        display: inline !important
    }

    .d-lg-inline-block {
        display: inline-block !important
    }

    .d-lg-block {
        display: block !important
    }

    .mt-lg-n4,
    .my-lg-n4 {
        margin-top: -6.9rem !important
    }

    .mr-lg-n4,
    .mx-lg-n4 {
        margin-right: -6.9rem !important
    }

    .mb-lg-n4,
    .my-lg-n4 {
        margin-bottom: -6.9rem !important
    }

    .ml-lg-n4,
    .mx-lg-n4 {
        margin-left: -6.9rem !important
    }

    .m-lg-n5 {
        margin: -9.6rem !important
    }

    .mt-lg-n5,
    .my-lg-n5 {
        margin-top: -9.6rem !important
    }

    .mr-lg-n5,
    .mx-lg-n5 {
        margin-right: -9.6rem !important
    }

    .mb-lg-n5,
    .my-lg-n5 {
        margin-bottom: -9.6rem !important
    }

    .ml-lg-n5,
    .mx-lg-n5 {
        margin-left: -9.6rem !important
    }

    .m-lg-n6 {
        margin: -10.65rem !important
    }

    .mt-lg-n6,
    .my-lg-n6 {
        margin-top: -10.65rem !important
    }

    .mr-lg-n6,
    .mx-lg-n6 {
        margin-right: -10.65rem !important
    }

    .mb-lg-n6,
    .my-lg-n6 {
        margin-bottom: -10.65rem !important
    }

    .ml-lg-n6,
    .mx-lg-n6 {
        margin-left: -10.65rem !important
    }

    .m-lg-auto {
        margin: auto !important
    }

    .mt-lg-auto,
    .my-lg-auto {
        margin-top: auto !important
    }

    .mr-lg-auto,
    .mx-lg-auto {
        margin-right: auto !important
    }

    .mb-lg-auto,
    .my-lg-auto {
        margin-bottom: auto !important
    }

    .ml-lg-auto,
    .mx-lg-auto {
        margin-left: auto !important
    }

    .sbe_portfolio-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .project-gridx3 {
        grid-template-columns: 33.33 1fr 1fr;
        grid-gap: 30px
    }
}

.project-gridx3 .project-item {
    width: 100%;
    position: relative
}

.project-gridx3 .project-item .project-item__image-container {
    width: 100%;
    height: 0;
    padding-bottom: 89%;
    position: relative;
    overflow: hidden
}

.project-gridx3 .project-item .project-item__image-container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .6s
}

section.pdv__extra-padding .container {
    padding-top: 100px;
    padding-bottom: 100px
}

.pdv__hero {
    min-height: 680px;
    height: 100vh;
    max-height: 125vw;
    background-size: cover;
    background-position: center center;
    display: flex;
    align-items: center
}

.inner-page-hero-image,
.sbe_inner-page-hero-image {
    background: #fff;
    overflow: hidden;
    aspect-ratio: 1
}

.pdv__full-width-image img {
    aspect-ratio: 12/5;
    object-fit: cover
}

.pdv__full-width-image>div {
    width: 100%;
    max-width: 100%;
    padding: 0
}

.pdv__full-width-image figure {
    min-height: 200px
}

.pdv__full-width-image figure figcaption {
    width: 88%;
    max-width: 1480px;
    margin: 0 auto;
    padding: 0 2vw;
    font-size: 14px;
    position: absolute;
    z-index: 1;
    left: 50%;
    bottom: 25px;
    line-height: 1.2;
    color: #fff;
    transform: translateX(-50%);
    text-shadow: -1px -1px 10px #000
}

.pdv__full-width-image figure:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 30%;
    min-height: 100px;
    opacity: 1;
    z-index: 1;
    background: linear-gradient(180deg, rgba(22, 31, 40, 0) 30%, rgba(22, 31, 40, .5) 80%) no-repeat padding-box
}

@media (min-width:1000px) {
    .ls__property-slider>div>div:last-of-type .slider-nav {
        top: 35% !important
    }
}

.sbe_inner-page-hero {
    margin-top: -3em
}

@media (min-width:720px) {
    .pb-md-40vh {
        padding-bottom: 40vh !important
    }

    .mb-md-auto,
    .my-md-auto {
        margin-bottom: auto !important
    }

    .ml-md-auto,
    .mx-md-auto {
        margin-left: auto !important
    }

    .slider-project-caption p {
        width: 71.79054054%
    }

    .sbe_inner-page-hero {
        margin-top: 180px
    }
}

.inner-page-hero .inner-page-hero-top {
    position: relative;
    margin-bottom: -300px;
    z-index: 2;
    margin-top: -3em
}

.inner-page-hero .inner-page-hero-top .container {
    padding: 0;
    position: relative;
    min-width: 100%
}

.inner-page-hero .inner-page-hero-top .container span,
.inner-page-hero .inner-page-hero-top .container-inner-header span {
    position: absolute;
    display: block;
    bottom: 35px;
    left: 5.8%;
    font-size: 2.3em;
    font-family: 'HelveticaNeueRoman', helvetica, arial, sans-serif;
    color: #fff;
    letter-spacing: .7px;
    z-index: 2
}

.sbe_inner-page-hero .sbe_inner-page-hero-top {
    position: relative;
    margin-bottom: -300px;
    z-index: 2
}

.sbe_inner-page-hero .sbe_inner-page-hero-top .container,
.sbe_verticals-hero .sbe_verticals-hero-top .container {
    padding-top: 0;
    padding-bottom: 0;
    position: relative
}

.sbe_inner-page-hero .sbe_inner-page-hero-top .container span,
.sbe_verticals-hero .sbe_verticals-hero-top span {
    position: absolute;
    display: block;
    z-index: 3;
    top: 2px;
    left: max(-39px, -1*(100vw - 100%)/4 + 4px);
    writing-mode: vertical-lr;
    transform: rotate(-180deg);
    transition: none;
    font-size: 1.5em
}

.sbe_inner-page-hero .sbe_inner-page-hero-bottom {
    padding-top: 300px;
    position: relative;
    z-index: 1
}

.sbe_inner-page-hero-image {
    width: 100%;
    padding-right: calc(100vw - (100vw - 100%)/ 2);
    max-height: 46vw;
    position: relative
}

@media (max-width:1520px) {
    .sbe_inner-page-hero-image {
        max-height: 750px
    }
}

.inner-page-hero-image img,
.sbe_inner-page-hero-image img,
.sbe_verticals-hero-image img,
.verticals-hero-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: 1.5s both header-reveal
}

.inner-page-hero-image video,
.sbe_inner-page-hero-image video {
    object-fit: cover;
    object-position: 50% 20%;
    width: 100%;
    min-width: 100%
}

@media (max-width:720px) {
    .inner-page-hero .inner-page-hero-top {
        margin-bottom: -150px;
        min-width: 100%
    }

    .sbe_inner-page-hero .sbe_inner-page-hero-top {
        margin-bottom: -150px
    }

    .sbe_inner-page-hero .sbe_inner-page-hero-top .container span {
        writing-mode: unset;
        left: unset;
        right: 0;
        position: relative;
        transform: none;
        padding: 30px 40px 15px 0
    }

    .sbe_inner-page-hero .sbe_inner-page-hero-bottom {
        padding-top: 150px
    }

    .sbe_verticals-hero-image {
        width: 100vw;
        padding-right: 0;
        margin-left: calc((100vw - 100%)/ -2)
    }
}

.inner-page-hero .inner-page-hero-bottom {
    position: relative;
    z-index: 1;
    padding-top: 80px
}

@media (min-width:767px) {
    .home_intro-content {
        padding-bottom: 3em
    }

    .inner-page-hero-image video,
    .sbe_inner-page-hero-image video {
        object-position: center
    }

    .inner-page-hero .inner-page-hero-bottom {
        padding-top: 100px
    }
}

@media (min-width:892px) {
    .inner-page-hero .inner-page-hero-bottom {
        padding-top: 90px
    }
}

.inner-page-hero-image {
    width: 100%;
    max-height: 510px;
    min-height: 510px;
    margin-top: 3em;
    height: 100%;
    position: relative
}

.inner-page-hero-image>video {
    max-height: 650px;
    min-height: 650px;
    height: 100%
}

@media (min-width:1520px) {

    .inner-page-hero-image,
    .inner-page-hero-image>video {
        max-height: 37vw
    }
}

.home_image-text-overlay {
    position: relative;
    margin: 0 0 2em;
    padding: 0;
    display: flex;
    flex-direction: column-reverse
}

.home_image-text-overlay .home_image-text-overlay__content {
    padding: 35px;
    margin: 0 auto;
    text-align: center
}

.object-position-100 {
    object-position: 50% 100%
}

.home_image-text-overlay img {
    position: relative;
    width: 100%;
    display: block;
    z-index: 1;
    object-fit: cover;
    height: 40vh
}

@media (min-width:767px) {
    .home_image-text-overlay {
        padding-top: clamp(100px, 5vw, 10em) !important;
        padding-bottom: 0
    }

    .home_image-text-overlay img {
        position: absolute;
        width: 95%;
        height: 83%;
        top: 0;
        right: 0
    }
}

@media (min-width:992px) {
    .container--grid-x-3 {
        padding: 6vw 0;
        max-width: 85%
    }

    .singe--postcontainer {
        padding: 3em 0 1em;
        max-width: 85%
    }

    .container-intro {
        padding: 16em 0 3em;
        max-width: 90%
    }

}

@media (min-width:992px) {
    .container-intro {
        padding: 16em 0 3em;
        max-width: 85%
    }

    .container-w,
    .splide-content {
        max-width: 85%
    }

    .container-full {
        max-width: 100%;
        width: 100%
    }

    .container_position {
        max-width: 87%
    }

    .standout_messaging_lg {
        margin: 3em 1em 2em !important
    }

    .full_width_approach {
        text-align: left
    }

    .full_width_approach h2 {
        max-width: 51%;
        line-height: 1.2;
        font-size: 2.48em;
        margin: 0;
        text-transform: capitalize;
    }

    .full_width_approach p {
        max-width: 60%;
        margin: 0;
        font-family: 'HelveticaNeueLight', arial, sans-serif;
        padding-bottom: 1.4em;
    }

    .featured-image {
        height: 34vw;
        max-height: 36vw
    }

    .featured-image-project {
        max-height: 750px
    }

    .heading-container {
        margin: 0;
        padding: 30px 0 4.2em
    }

    .margin_contain_md {
        padding: 3em 16em;
        margin: 0 auto
    }

    .nav-container {
        width: 100%
    }

    .cta__outer {
        margin-bottom: 5vw;
        padding-bottom: 4em;
        width: 100%
    }

    .contact-item {
        flex-direction: row;
        justify-content: flex-start
    }

    .site-footer__bottom {
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 20px 0;
        padding: 35px 0;
        position: relative;
        width: 100%
    }

    .site-header__logo {
        max-width: 200px;
    }

    .site-header__sub-nav>a {
        font-size: 18px;
    }

    .portfolio-grid .featured-item__media-container {
        min-height: 30vw;
    }

    .btn-dark-main-arrow,
    .btn-darkheight-main-arrow,
    .btn-lightborder-white-arrow {
        margin: 0;
    }

    .container-inner-header {
        width: 100%;
        margin: 6.7em 0 1vw;
    }


    .page-template-page-academic .container,
    .page-template-page-medical-office .container,
    .page-template-page-mixed-use .container,
    .page-template-page-multifamily .container,
    .page-template-page-office .container,
    .page-template-page-office-flex .container,
    .page-template-page-retail .container {
        max-width: 90%
    }

    .video--wrap>video {
        padding: 60px
    }

    .project-head img,
    .project-head video,
    video.video-project-content {
        max-height: 43vw
    }

    div#overlay-statement {
        font-size: 36px
    }

    div#overlay-statement h2 {
        padding: 9em 0
    }

    .grid_project_container {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 0 50px;
        padding: 0
    }

    .project--content {
        padding: 2em 0 0
    }

    section.property-single-media {
        height: 100%
    }

    .projects-main img,
    .projects-main>video {
        height: 44vw;
        margin-top: 3.8em
    }

    .project_mediablock img.image-mediablock,
    .project_mediablock video.video-mediablock {
        min-height: 1090px;
        max-height: 1090px
    }

    .home_intro-content .container {
        column-gap: 24px;
        grid-template-columns: 30% 1fr;
        grid-gap: 50px
    }

    .portfolio-grid {
        gap: 20px;
        padding: 1.8em 0 2em
    }

    .inner-page-hero .inner-page-hero-top .container span,
    .inner-page-hero .inner-page-hero-top .container-inner-header span,
    .verticals-hero .verticals-hero-top span {
        left: 6.1%;
        letter-spacing: 0;
    }

    .home_image-text-overlay .home_image-text-overlay__content {
        border: 1px solid #ddd;
        background: #fff;
        padding: 5em 75px;
        margin: 2em 0 6.4em;
        text-align: left;
        z-index: 4
    }

    .home_image-text-overlay img {
        width: 95%;
        height: 83%
    }
}

@media (min-width:1100px) {
    .video-hero-home h1 {
        font-size: 5rem
    }

    .video-hero-home h2 {
        font-size: 4.4rem
    }

    .heading-container {
        grid-template-columns: 33% 1fr;
        grid-gap: 7%
    }

    .team_grid__inner {
        max-width: 90%;
        grid-template-columns: repeat(3, 1fr);
        padding: 0
    }

    .home_image-text-overlay img {
        width: 95%;
        height: 100%
    }
}

.home_image-text-overlay.home_image-text-overlay--align-right .home_image-text-overlay__content {
    padding-right: unset;
    padding-left: 4vw
}

.home_image-text-overlay.home_image-text-overlay--align-right img {
    right: unset;
    left: 0
}

.s--black .home_image-text-overlay .home_image-text-overlay__content {
    background: #000
}

.column-overlay {
    width: 100%;
    padding: 0;
    border: 0;
    margin: 30px;
    position: relative
}

@media (min-width:1200px) {
    .featured-properties-container {
        margin-top: 6em;
        margin-bottom: 0;
        padding-bottom: 0
    }

    .container-featured-head {
        width: 100%;
        text-align: left
    }

    .grid--columns-columns {
        max-width: 92%
    }

    .c-header h3 {
        font-size: 24px
    }

    .project-gridx3 {
        grid-template-columns: 1fr 1fr 1fr
    }

    .column-overlay {
        max-width: 45%
    }
}

.c-team-grid,
.team-grid {
    grid-template-columns: 1fr
}

.column-overlay p {
    margin-bottom: 1em
}

.column-overlay h3 {
    font-size: 32px;
    margin-bottom: 25px;
}

.c-project-headline h2 {
    font-size: 35px;
    letter-spacing: -1px;
    line-height: 1;
    margin: 20px 0 10px;
    color: #000
}

.project-card h3 {
    font-size: 29px;
    letter-spacing: 0px;
    line-height: 1.3;
    margin: 20px 0 0;
    font-weight: 400;
    color: #000
}

.project-card p {
	margin: 0;
}

.m-tb-4 {
    margin-top: 2em;
    margin-bottom: 5em
}

.single-post-feature {
    width: 100%;
    height: 100%;
    min-height: 500px;
    object-fit: cover
}

.single-projects h3,
.single-team .team-member img {
    height: 100%;
    min-height: 650px;
    object-position: 50% 10%
}

.single-projects h2.heading,
.single-team h2.heading {
    font-size: 40px;
    margin-bottom: 50px
}

.single-team .c-team-content h1 {
    font-size: 33px
}

.single-projects h3,
.single-team h3 {
    font-size: 20px;
    letter-spacing: .03px;
    line-height: 1.3
}

.single-team .c-team-content {
    width: 100%;
    padding: 0 40px;
    max-width: 100%;
    margin: 3em auto
}

.single-team .property-pagination {
    background: #eee;
    padding: 20px 0
}

.single-team .property-pagination__page-icon svg {
    fill: #fff !important
}

p.meta-single-type {
    text-transform: capitalize;
    font-weight: 600;
    border-bottom: 1px solid #ccc;
    margin: 0 0 20px;
    padding-bottom: 15px
}

.post-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    border-top: 1px solid #eee;
    padding-top: 30px
}

.post-navigation a {
    text-decoration: none;
    color: #000;
    font-size: 18px;
    text-transform: uppercase
}

.post-navigation__image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    border-radius: 3px
}

.post-navigation__title {
    margin-top: 10px;
    text-align: left
}

.post-navigation span {
    color: #999
}

.fl_col_container {
    display: flex;
    padding: 0 30px;
    margin: 0 auto
}

.single-team h1 {
    font-size: 41px;
    letter-spacing: -.03px;
    line-height: 1;
    margin: 20px 0 10px;
    font-weight: 500;
    color: #000
}

.single-team h2 {
    font-size: 30px;
    margin: 0 0 20px
}

.featured-video-wrapper {
    position: relative;
    max-width: 100%;
    margin: 0 auto
}

.featured-video {
    width: 100%;
    height: auto
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5)
}

.video-title-overlay {
    position: absolute;
    bottom: 10px;
    left: 10px;
    color: #fff;
    font-size: 1.5em
}

.team-grid img.loaded,
.team-item:hover .team-card,
.team-modal-img.loaded {
    opacity: 1
}

.news-card:hover img,
.team-item:hover .sbe_portfolio-item__image-container img,
.team-item:hover img {
    transform: scale(1.05)
}

.sbe_portfolio-item {
    opacity: 1;
    transform: scale(1);
    transition: opacity .3s, transform .3s;
    display: block !important
}

.property-pagination {
    position: relative;
    z-index: 2;
    padding: 30px 0
}

.property-pagination__inner {
    align-items: center;
    display: flex;
    justify-content: space-between
}

.property-pagination__page {
    align-items: center;
    cursor: pointer;
    display: flex;
    width: 25%
}

.property-pagination__page.--next {
    display: flex;
    justify-content: flex-end
}

.property-pagination__page.--disabled {
    opacity: .35;
    pointer-events: none
}

.property-pagination__all {
    align-items: center;
    display: flex;
    justify-content: center;
    width: 50%
}

.property-pagination__all span {
    cursor: pointer;
    font-weight: 600;
}

.property-pagination__page-icon {
    align-items: center;
    border: 1px solid #000;
    border-radius: 100px;
    display: flex;
    height: 40px;
    justify-content: center;
    transition: border .15s linear, background .15s linear;
    width: 40px
}

.property-pagination__current-page,
.property-pagination__numeric-page {
    margin: 0 8px
}

@media (min-width:49.375em) {
    .stats__stat-description {
        margin-top: 16px
    }

    .team-thumb {
        aspect-ratio: 6/7;
        padding: 30px
    }

    .team-thumb__text svg {
        height: 20px;
        width: 20px
    }

    .team-thumb__text svg * {
        stroke-width: 1 !important
    }

    .two-col-text__left {
        padding-right: 12.5%
    }

    .two-col-text__right.--split>.rtf,
    .two-col-text__right.--split>.values {
        column-count: 2;
        column-gap: 48px
    }

    .two-col-text__right.--split>.rtf *,
    .two-col-text__right.--split>.values * {
        break-inside: avoid
    }

    .two-col-text__footer {
        margin-top: 48px
    }

    .property-pagination__page {
        width: inherit
    }

    .property-pagination__all {
        width: 33.333%
    }

    .property-pagination__page-icon {
        height: 48px;
        width: 48px
    }

    .property-pagination__current-page,
    .property-pagination__numeric-page {
        align-items: center;
        border: 1px solid #d9d5d0;
        border-radius: 100px;
        display: flex;
        height: 48px;
        justify-content: center;
        margin: 0 5px;
        transition: border .15s linear, background .15s linear;
        width: 48px
    }
}

@media (hover:hover) and (min-width:49.375em) {

    .property-pagination__current-page:hover,
    .property-pagination__numeric-page:hover {
        background-color: #fff;
        border-color: #fff
    }
}

@media (max-width:792px) {
    .stats__stat-description {
        font-size: 16px;
        line-height: 1.5
    }

    .property-pagination__current-page {
        border-bottom: 1px solid;
        margin-top: 1px;
        border-bottom-color: inherit
    }
}

.property-pagination__ellipsis {
    margin: 0 4px
}

.property-pagination.--properties-page {
    padding-bottom: 0;
    padding-top: 56px
}

.property-pagination.--properties-page .property-pagination__all {
    width: auto !important
}

.property-pagination.--properties-page .property-pagination__page {
    width: 50px !important
}

.team-template-default .property-pagination {
    background: #efefef;
}

.property_pagination_background {
    background: #eee;
    border-top: 1px solid #eee;
}

.grid--single-team .team-member img {
    width: 100%;
    min-width: 100%;
    object-fit: cover;
    height: 43vw
}

.c-team-container {
    width: 100%;
    max-width: 95%;
    margin: 0 auto;
    padding: 6em 10px
}

.c-team-grid {
    display: grid;
    grid-gap: 20px;
    padding-top: 10px
}

.team-heading {
    color: #fff;
    text-align: center;
    font-size: 2em;
    margin: 2em 0
}

.team-grid {
    display: grid;
    grid-gap: 35px;
    margin: 0 1em;
    color: #fff
}

@media (min-width:992px) {
    .feature-overlay {
        padding-top: 6em
    }

    .column-overlay {
        max-width: 45%
    }

    .column-overlay h3 {
        max-width: 90%
    }

    .project-card h3 {
        font-size: 27px
    }

    .single-post-feature {
        height: 100%;
        max-height: 38vw;
        padding: 0 30px
    }

    .single-team .c-team-content {
        width: 100%;
        padding: 0 40px;
        margin: 1em auto 6em
    }

    .grid--container-team {
        max-width: 100%
    }

    .grid--single-team {
        display: grid;
        grid-template-columns: 37% 1fr;
        grid-gap: 85px;
        max-width: 90%;
        margin: 0 auto;
        padding: 11em 0 4em
    }

    .c-team-container {
        padding: 6vw 2vw;
        max-width: 85%
    }

    .team-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}



@media (min-width: 1300px) {
    .column-overlay h3 {
        max-width: 80%
    }
}



.team-grid img,
.team-modal-img {
    opacity: 1;
    transition: opacity 1s ease-in-out
}

.team-card,
.team-modal {
    left: 0;
    opacity: 0;
    width: 100%;
    color: #fff
}

.team-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: 400px;
    transition: transform .3s, filter .3s;
    filter: brightness(1)
}

.team-item:hover img {
    filter: brightness(.8)
}

.team--profile {
    margin: 5px 5px 10px
}

.team--profile h3 {
    letter-spacing: -.99px;
    font-size: 28px
}

.team--profile p.position {
    letter-spacing: -.99px;
    font-size: 17px;
    text-transform: uppercase
}

.team-card {
    position: absolute;
    bottom: 0;
    padding: 10px;
    transition: opacity .3s
}

.sbe_portfolio-item__image-container,
.team-image-container {
    overflow: hidden;
    position: relative
}

.team-modal {
    position: fixed;
    height: 100%;
    top: 0;
    background-color: #000;
    z-index: 3;
    overflow-y: auto;
    padding: 7.3em 30px 1em
}

.team-modal-content {
    display: grid;
    width: 100%;
    background-color: #000;
    color: #fff;
    grid-template-columns: 1fr;
    grid-gap: 20px;
    margin-top: 0
}

.team-modal-img {
    width: 100%;
    aspect-ratio: 1;
    transition: opacity .4s ease-in-out
}

.team-modal-text {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.team-modal-name {
    font-size: 3em;
    line-height: 1;
    font-weight: 300;
    margin: 10px 0 5px;
    letter-spacing: -.9px
}

.team-modal-position {
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1;
    text-transform: uppercase;
    margin: 5px 0 17px;
    font-weight: 600
}

.team-modal-bio p {
    font-size: 21px;
    margin-bottom: 20px;
    line-height: 1.2;
    letter-spacing: -.78px
}

.team-modal-close {
    position: absolute;
    top: 3.4em;
    right: 20px;
    cursor: pointer;
    z-index: 1100
}

.team-modal-close svg {
    width: 15px;
    height: 15px;
    fill: #fff;
    stroke: #fff;
    stroke-width: 2.5;
    transition: opacity .3s
}

.team-modal-close svg:hover {
    opacity: .7
}

.team-modal-visible {
    opacity: 1;
    pointer-events: all
}

.team-modal-visible .team-modal-content {
    animation: 1s linear fadeIn
}

@keyframes zoom {
    from {
        transform: scale(0)
    }

    to {
        transform: scale(1)
    }
}

.container-inset {
    width: 100%;
    margin: 0 auto;
    padding: 0 25px;
    background: #000
}

.grid-project-taxonomy {
    grid-template-columns: 1fr 1fr 1fr;
    margin: 0 auto 80px;
    max-width: 90%;
    grid-gap: 20px;
    display: grid;
    width: 100%
}

.item {
    border-radius: 4px;
    height: 100px;
    width: 100%;
    transition: opacity .3s, transform .3s
}

.hide {
    opacity: 0;
    transform: scale(.8)
}

.btn--home {
    border-bottom: 1px solid #fff;
    padding-bottom: 2px;
    color: #fff
}


.t-container {
    width: 100%;
    background: #242424;
    display: grid;
    grid-template-columns: 1fr
}

.t-content img {
    height: 100%;
    width: 100%;
    min-height: 500px;
    max-height: 500px;
    object-fit: cover;
    margin-top: 1.5em
}

.t-content-heading {
    padding: 3em 30px;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: end;
    border-left: 1px solid #ffffff40
}

.t-content-heading h2 {
    font-size: 40px;
    color: #fff;
    line-height: 1.1;
    margin-bottom: 10px;
    font-weight: 500
}

@media (min-width:767px) {
    .c-team-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 40px
    }

    .team-item img {
        min-height: 350px;
        max-height: 350px
    }

    .team-modal-close {
        top: 6.5em;
        right: 4em
    }

    .team-modal-close svg {
        width: 20px;
        height: 20px
    }

    .container-inset {
        padding: 0 8vw
    }

    .t-content img {
        min-height: 650px;
        max-height: 650px
    }

    .t-content-heading {
        padding: 4em 2em
    }

    .t-content-heading h2 {
        font-size: 41px
    }
}

.t-content-heading h3 {
    font-size: 22px;
    line-height: 1;
    margin: 0;
    letter-spacing: .3px
}

.t-content-container {
    margin: 1em auto;
    font-size: 2em;
    width: 100%;
    padding: 40px
}

.t-content-container h2 {
    font-size: 32px;
    line-height: 1.1;
    margin-bottom: 30px;
    border-bottom: 1px solid #000;
    padding-bottom: 15px
}

.t-content-container p {
    line-height: 1.5;
    letter-spacing: .4px;
    font-size: 23px;
    margin-bottom: 25px
}

@media (min-width:992px) {
    .team-modal {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 7em 30px
    }

    .team-modal-content {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 30px;
        max-width: 90%
    }

    .team-modal-text {
        padding-left: 60px
    }

    .container-content,
    .container-inset {
        padding: 0 8.2vw
    }

    .t-container {
        width: 100%;
        background: #242424;
        display: grid;
        grid-template-columns: 47% 1fr
    }

    .t-content-heading {
        padding: 0 4em 4em
    }

    .t-content-container {
        max-width: 99%
    }

    .t-content-container h2 {
        font-size: 38px
    }

    .t-content-container p {
        font-size: 24px
    }
}

.page-template-page-company .container-intro {
    margin-bottom: 5.5em;
}


.wp-block-separator {
    background: #ddd !important;
    border-top: 1px !important
}

.project_details_main {
    padding: 3em
}

.project_interior_block {
    padding: 0 40px
}

.project_interior_block h1 {
    font-size: 35px;
    margin-bottom: 20px;
    line-height: 1.1
}

@media (min-width:1250px) {
    .project_interior_block h1 {
        padding: 45px 0;
        max-width: 85%;
        font-size: 40px
    }
}

.project_interior_block p {
    font-size: 23px;
    line-height: 1.6;
    margin-bottom: 20px
}

.project_block_two {
    padding: 90px
}

.project_block_two h2,
.project_block_two h3 {
    font-size: 22px;
    text-transform: capitalize;
    font-weight: 400;
    line-height: 1.1
}

.project_content_details h2,
.project_content_details h3 {
    font-weight: 300
}

.project_content_details p {
    font-size: 20px;
    line-height: 1.63
}

.project_description h1,
.project_description h2 {
    font-size: 37px;
    line-height: 1;
    font-weight: 500;
    margin: 0 0 26px;
    border-bottom: 1px solid #999;
    padding-bottom: 20px
}

.project_description h3 {
    font-size: 26px;
    line-height: 1.54;
    letter-spacing: .5px;
    text-transform: capitalize;
    margin-bottom: 25px
}

.project_content_details h2,
.project_content_details h3 {
    letter-spacing: .4px;
    color: #000;
    font-size: 21px !important
}

.project_description p {
    font-size: 22px;
    line-height: 1.51
}

.heading-offset-left {
    margin-left: 10px
}

.main-header-image {
    height: 100%;
    min-height: 600px
}

.group__inner-container {
    margin: 0 auto;
    padding: 0 5em
}

.project_video_container_fw {
    max-width: 90% !important;
    margin: 0 auto !important
}

.tw-block-animation {
    opacity: 1 !important
}

.project--header .wp-block-cover__inner-container h2 {
    position: absolute !important;
    left: 6% !important;
    bottom: 3%
}

.project-hero-image {
    height: 450px;
    min-height: 450px;
    max-height: 450px
}

.project_column_image_block_left p,
.project_column_image_block_right p {
    text-transform: uppercase;
    padding: 1.5em 1em 0;
    font-size: 19.5px;
    letter-spacing: 1.12444px
}

.decoration_none {
    text-decoration: none !important
}

.button--primary-dark,
.news-caption a,
.news-card,
.news-link a {
    text-decoration: none
}

.project_h2_header {
    margin-bottom: 1em;
    margin-top: 1em
}

.grid_inner_container,
.project_middle_align {
    max-width: 95%;
    width: 100%;
    margin: 0 auto
}

.padded3 {
    width: 95%;
    max-width: 95%;
    margin: 0 auto;
    padding: 3em
}

.project_content_block_pad {
    width: 100%;
    padding: 0 20px
}

.heading-project-h3 {
    line-height: 1.1
}

.project_card_hero h2 {
    color: #fff !important;
    position: absolute;
    left: 9%;
    bottom: 1em;
    font-size: 40px !important
}

.project_gallery,
.project_gallery_pad {
    width: 95%;
    margin: 0 auto
}

.project_gallery_pad {
    max-width: 80%;
    padding: 3em 6em
}

.padding-pagin,
.single-newsinsights .figure.wp-block-gallery.has-nested-images {
    padding: 2em 0
}

.single-post--content a {
    border-bottom: 1px solid #494949;
    padding-bottom: 1px;
    font-size: 21px;
    line-height: 1.78;
}


.single-post-header {
    padding: 2em;
    text-transform: capitalize
}

.single-post--content {
    width: 100%;
    margin: 0 auto;
    padding: 2em 30px 0;
}

.single-post--content p {
    font-size: 21px !important;
}


.single-post--content h3 {
    padding-bottom: 1em
}

.single-post-header h2 {
    font-size: 36px;
    margin: 0 0 5px;
    text-transform: capitalize;
    letter-spacing: 0;
    text-align: left;
    line-height: 1.13;
    margin-bottom: 20px;
    padding: 24px 0 10px
}


.news-card h2,
.single-post--content h2,
.single-post--content h3,
.single-post--content h4 {
    letter-spacing: 0;
    text-transform: capitalize
}

.single-post--content img {
    margin: 2em 0
}

.single-post--content h2 {
    font-size: 32px;
    line-height: 1.4;
    width: 100%;
    padding-top: 1em;
    margin-bottom: 20px;
    font-weight: 500;
    padding-bottom: 16px;
    border-bottom: 1px solid #ddd;
}

.single-post--content h3 {
    font-size: 30px;
    margin-bottom: 0;
    line-height: 1.2
}

.single-post--content h4 {
    font-size: 24px;
    margin-bottom: 20px
}

.single-post--content h5,
.single-post--content h6 {
    font-size: 22px;
    margin-bottom: 20px;
    letter-spacing: 0;
    text-transform: capitalize
}

.news-post-date {
    font-size: 14px;
    color: #fff;
    margin-top: 5px
}

.news--insights-header .outlet {
    display: flex;
    flex-direction: row;
    justify-content: start;
    gap: 20px;
    padding-bottom: 30px
}

.news--insights-header .outlet h3 {
    font-size: 20px;
    text-transform: uppercase;
    letter-spacing: 1px
}

.insights_container_layout {
    width: 100%;
    max-width: 90%;
    margin: 3em auto 5em
}

.insights_container_layout .type-newsinsights h2 {
    margin-bottom: 3em;
    font-size: 30px !important;
    line-height: 1.33
}

.insights-section {
    padding: 1rem;
    margin-bottom: 2em;
    margin-top: 2em
}

.insights--container {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 auto 5em;
    max-width: 95%;
    grid-gap: 20px;
}

@media (min-width:1024px) {
    .home_intro-content p {
        font-size: 24px;
        line-height: 1.3
    }

    .home_intro-content h2 {
        font-size: 40px
    }

    .sbe_portfolio-grid,
    .team-grid {
        grid-template-columns: repeat(3, 1fr)
    }

    .insights--container {
        grid-template-columns: repeat(2, 1fr);
        max-width: 90%;
        grid-gap: 1rem
    }

    .news-card img {
        height: 100%
    }
}

@media (min-width:1300px) {
    .site-container {
        max-width: 90%
    }

    .c--home-container {
        padding: 11.5em 20px 6em
    }

    .heading-container {
        grid-template-columns: 31% 1fr;
        grid-gap: 5%;
        align-items: flex-start;
        align-content: flex-start;
    }

    .inner-page-hero .inner-page-hero-top .container span,
    .inner-page-hero .inner-page-hero-top .container-inner-header span,
    .verticals-hero .verticals-hero-top span {
        left: 7.1%;
        letter-spacing: 0;
    }

    .home_image-text-overlay img {
        width: 89%;
        height: 51em
    }

    .feature-overlay {
        padding-bottom: 3em
    }

    .t-content img {
        min-height: 44em;
        max-height: 44em
    }

    .t-content-heading h2 {
        font-size: 52px
    }

    .t-content-container {
        max-width: 79%
    }

    .t-content-container p {
        font-size: 25px
    }

    .news--insights-header .outlet {
        gap: 100px;
        justify-content: start
    }

    .insights-section {
        padding: 1rem;
        margin-bottom: 5em;
        margin-top: 5em
    }

    .insights--container {
        grid-template-columns: repeat(3, 1fr)
    }
}

.news-card {
    position: relative;
    padding: 0;
    display: flex;
    align-items: flex-start;
    overflow: hidden
}

@media (min-width:767px) {
    .t-content-container h2 {
        font-size: 38px
    }

    .news-card {
        min-height: 400px
    }
}

.news-card--big {
    grid-column: span 2;
    padding: 0
}

.news-card h2 {
    font-size: 26px;
    line-height: 1.32;
    margin: 0;
    color: #fff;
    position: absolute;
    bottom: 20px;
    left: 1rem;
    z-index: 2;
    padding: 0 20px 30px
}

.news-card img {
    object-position: 5% 33%;
    object-position: 40% 5%;
    width: 100%;
    margin-bottom: 1rem;
    transition: transform .3s;
    height: 100%;
    padding: 0
}

.news-card:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.6) 20%, rgba(0, 0, 0, 0) 100%);

    z-index: 1
}

.lg-sub-html,
.news-card--big .btn-post {
    display: none
}

@media (max-width:991px) {
    .insights--container {
        grid-template-columns: repeat(2, 1fr)
    }
}


.wp-block-video video {
    width: 100% !important;
}

.wp-block-column .project_content_details {
    margin: 0 0 .5em
}

.has-large-font-size {
    line-height: 1.3;
    font-size: 40px !important
}

.wp-elements-0100e78fdc0952d8551f3e2d72ff2426 {
    padding: 5em 0;
    margin: 2em 0
}

.wp-block-cover__inner-container {
    padding: 20px 40px 40px
}

.project-filter {
    position: relative;
    margin-bottom: 2em;
    width: 250px
}

#project-category-filter {
    appearance: none;
    -webkit-appearance: none;
    background-color: #fff;
    color: #000;
    padding: 10px 40px 10px 10px;
    border: 1px solid transparent;
    border-radius: 0;
    font-size: 24px;
    width: 100%;
    margin-bottom: 0;
    transition: background-color .3s
}

#project-category-filter:focus,
#project-category-filter:hover {
    background-color: transparent;
    transition: .7s ease-in-out
}

#project-category-filter option {
    background-color: #fff;
    color: #000
}

#project-category-filter:focus+.project-filter::after {
    color: #0074d9
}

.container-filter {
    width: 100%;
    margin: 0 auto;
    max-width: 100%;
    padding: 3em 1em 1em
}

.outer.hero--video {
    width: 100%;
    height: 100%;
    min-height: 80vh;
    display: flex;
    flex-direction: end;
    justify-content: center
}

.hero--video .video--container {
    height: 80vh;
    min-height: 80vh;
    width: 100%;
    position: relative;
    overflow: hidden
}

.hero--video video {
    object-fit: cover;
    position: absolute;
    height: 80vh;
    width: 100%;
    top: 0;
    left: 0
}

@media (max-width:767px) {
    .news-card img.large {
        min-height: 600px
    }

    .insights--container {
        grid-template-columns: 1fr
    }

    .news-card {
        height: 100%;
        min-height: 350px
    }

    .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
        width: 100% !important;
        margin: 2em 0 -1em !important
    }

    .wp-block-column-is-layout-flow .wp-block-spacer {
        height: 20px !important
    }

    .hero--video .video--container,
    .hero--video video {
        height: 80vh
    }

    .hero--video .main--header {
        width: 80%
    }
}

.hero--video .video--container:after {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .2);
    z-index: 1
}

.hero--video h1.video--header {
    z-index: 99;
    position: absolute;
    left: 5%;
    bottom: 6%;
    font-size: 35px;
    margin: 0;
    padding: 0;
    line-height: 1;
    font-weight: 400;
    font-family: "NeueHaasGroteskDisplayPro", "NeueHaasGroteskDisplay", arial, sans-serif;
    color: #fff;
    display: flex;
    justify-content: flex-end;
    flex-direction: column
}

@media (min-width:992px) {
    .project_details_main {
        padding: 6em 7em 7em;
        gap: 100px
    }

    .project_gallery_offset {
        padding: 5em 9em 6em !important
    }

    .project_interior_block {
        padding: 0 90px;
        max-width: 85%
    }

    .project_block_two {
        padding: 90px;
        max-width: 80%
    }

    .heading-offset-left {
        margin-left: 2em
    }

    .main-header-image {
        height: 100%;
        min-height: 800px
    }

    .project_video_container_fw {
        max-width: 73% !important;
        margin: 0 auto !important
    }

    .project_block_offset {
        padding: 1em 5em !important
    }

    .project_gallery,
    .wp-block-group .grid_inner_container {
        max-width: 80%
    }

    .project-hero-image {
        height: 700px;
        min-height: 700px;
        max-height: 700px
    }

    .grid_inner_container,
    .project_middle_align {
        max-width: 87%
    }

    .project_content_block_pad {
        max-width: 95%;
        margin: 0 auto;
        padding: 6em 3em 6em 0
    }

    .project_offset_text_block_pad {
        padding-left: 2em;
        padding-top: 2em
    }

    .wp-block-columns.tw-gutter-large {
        column-gap: 90px !important
    }

    .single-post-header {
        padding: 1em;
        margin: 0 auto;
        width: 85%
    }

    .single-post--content {
        max-width: 85%;
        padding: 2em 0 20px;
    }

    .news-card h2 {
        font-size: 27px;
        padding: 25px;
        line-height: 1.411
    }

    .container-filter {
        max-width: 90%;
        margin: 0 auto;
        padding: 5em 0 1em
    }

    .hero--video h1.video--header {
        font-size: 44px
    }

    .wrapper-dropdown {
        max-width: 300px
    }
}

@media (min-width:1500px) {
    .container-main {
        width: 95%
    }

    .heading--main h3,
    .heading--main p {
        font-size: 24px;
        line-height: 1.42;
    }

    .team-grid {
        grid-template-columns: repeat(4, 1fr)
    }

    .team-item img {
        height: 395px
    }

    .hero--video h1.video--header {
        font-size: 48px
    }
}

.animate-text {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .5s ease-out, transform .5s ease-out
}

.arrow,
svg {
    transition: .3s
}

.hero--video .main--header {
    display: flex;
    align-items: center;
    flex-direction: row;
    height: 100%;
    text-align: left;
    position: relative;
    z-index: 10;
    width: 80%;
    margin: auto
}

.wp-block-image :where(figcaption) {
    text-transform: uppercase;
    text-align: left;
    letter-spacing: 1.1px;
    font-size: 15px;
    margin: 0;
    padding: 0
}

.project_video_head>video {
    height: 600px;
    min-height: 600px;
    max-height: 600px;
    object-fit: cover
}

.selection-dropdown {
    display: flex;
    justify-content: start;
    width: 100%
}

.wrapper-dropdown {
    position: relative;
    display: flex;
    font-size: 22px;
    border-bottom: 1px solid #999;
    width: 100%;
    padding: 0;
    color: #000;
    cursor: pointer;
    user-select: none;
    margin-bottom: 20px;
    justify-content: space-between
}

.scrollable-menu {
    height: auto;
    max-height: 800px;
    overflow-x: hidden;
}

.arrow {
    rotate: 180deg
}

.column-content h2,
.selected-display {
    padding-bottom: 20px
}

.wrapper-dropdown::before {
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -2px;
    border-width: 6px 6px 0;
    border-style: solid;
    border-color: #fff transparent
}

.rotated {
    transform: rotate(-180deg)
}

.wrapper-dropdown .dropdown {
    transition: opacity .3s, transform .3s;
    position: absolute;
    top: 120%;
    right: 0;
    left: 0;
    margin: 0;
    padding: 0;
    list-style: none;
    z-index: 99;
    border-radius: 15px;
    box-shadow: inherit;
    background: inherit;
    transform-origin: top;
    opacity: 0;
    visibility: hidden;
    transform: scaleY(0)
}

.wrapper-dropdown .dropdown li {
    line-height: 1;
    align-items: center;
    display: flex;
    font-family: 'HelveticaNeueRoman', helvetica, arial, sans-serif;
    border-radius: 0;
    height: 60px;
    font-size: 19px;
    padding-left: 17px;
    padding-bottom: 0;
    background: #000;
    color: #fff;
    border-bottom: 1px solid #5d5d5d;
    transition: .5s ease-in-out
}

.wrapper-dropdown .dropdown li:hover {
    background: #ffffff;
    color: #000;
    transition: .5s ease-in-out
}

.wrapper-dropdown .dropdown li:last-child {
    border-bottom: none
}

.wrapper-dropdown.active .dropdown {
    opacity: 1;
    visibility: visible;
    background: #fff;
    color: #fff;
    border: 1px solid #000;
    border-radius: 0;
    transform: scaleY(1)
}

.page-template-page-investment-strategy .wp-block-cover__inner-container .strategy_box {
    margin: 30px
}

.page-template-page-investment-strategy .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    margin-bottom: 30px
}

.feature-section {
    align-self: center;
    display: flex;
    flex-direction: column;
    min-height: 53.25vw;
    text-align: center;
    width: 100%;
    margin: 0 auto 2em;
    font-weight: 300;
    padding: 0;
}

@media (min-width: 1100px) {
	.feature-section {
		padding: 0 60px;
	}
}

.approach-market-sectors {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    padding: 6% 0 2.5%
}
.approach-market-sectors .feature-content h3 {
	font-size: 27px;
    padding: 0 50px;
    margin: 0 auto;
}

@media (min-width: 992px) {
	.approach-market-sectors .feature-content h3 {
	max-width: 50%;
	}
}

.feature-section__image-wrapper,
.feature-side {
    flex-basis: 50%;
    flex-grow: 1;
    flex-shrink: 1;
    padding: 0
}

.feature-section__image-wrapper {
    min-height: 100vw;
    overflow: hidden;
    position: relative
}

.feature-section__image-link {
    border: 0;
    display: block;
    line-height: 0;
    min-height: 100%;
    min-width: 100%;
    padding: 0;
    position: absolute
}

.feature-section__image {
    height: 100%;
    left: 0;
    padding: 15px;
    object-fit: cover;
    object-position: center center;
    position: absolute;
    top: 0;
    transform-origin: center;
    transition: .4s ease-in-out;
    width: 100%
}

.feature-section[focus-within] .feature-section__image,
a:not([href=""]):hover .feature-section__image {
    transform: scale(1.06);
    transition: .4s ease-in-out
}

.feature-section:focus-within .feature-section__image,
a:not([href=""]):hover .feature-section__image {
    transform: scale(1.06);
    transition: .4s ease-in-out
}

.feature-side {
    align-items: center;
    display: flex;
    justify-content: center;
    padding:1em 60px;
}

.button--primary-dark,
.primary {
    justify-content: center;
    color: #fff;
    text-align: center
}

.feature-body-content .button--lrg {
    margin-top: 22px
}


.feature-body-content h3,
.feature-full-content h3 {
    font-size: 14px;
    letter-spacing: 3px;
    margin-bottom: 20px;
    font-weight: 600;
    text-transform: uppercase;
    d
}

.order-reverse {
    order: 2
}

.feature_bg_grey {
    background: #f6f6f6
}

.button--primary-dark {
    border: 1px solid #000;
    border-radius: 3px;
    height: 60px;
    display: inline-flex;
    align-items: center;
    width: 300px;
    background: #000;
    margin: 1em auto 0;
    gap: 10px;
    transition: background .5s ease-in-out, color .5s ease-in-out
}

.button--primary-dark .arrow-svg {
    overflow: visible
}

.button--primary-dark .arrow-line {
    stroke-dasharray: 40;
    stroke-dashoffset: 0;
    transition: stroke-dasharray .5s ease-in-out
}

.button--primary-dark:hover {
    background: 0 0;
    color: #000
}

.button--primary-dark:hover .arrow-line {
    stroke-dasharray: 50
}

.image-cnt {
    width: 321px;
    padding-bottom: 378px;
    height: 0;
    position: relative
}

.fadesin {
    width: 100%;
    height: auto;
    position: absolute;
    display: block;
    border: 0;
    opacity: 0;
    transition: opacity 1s
}

.glide__slide,
.glide__slide p,
.glide__slide p:hover,
.glide__slide:hover,
.primary,
.primary:hover {
    transition: .5s ease-in-out
}

.fadesin:not([src]) {
    visibility: hidden
}

.primary {
    display: flex;
    background: #000;
    border-radius: 3px;
    height: 55px;
    width: 100%;
    max-width: 265px;
    border: 1px solid #000;
    align-content: center;
    align-items: center
}

.overview-content .heading,
.overview-content:before {
    transition: .6s ease-in-out;
    position: absolute;
    left: 0
}

.grid-approach {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
    margin: 0 auto
}

.grid-approach img {
    width: 100%;
    object-fit: cover;
    height: 550px
}

.strategies-container {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 30px;
    margin: 4em auto;
    width: 100%;
    max-width: 100%;
    padding: 20px
}

.overview-content {
    display: block;
    position: relative;
    text-align: center;
    margin-bottom: .6em
}

.overview-content:before {
    content: "";
    top: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, .3);
    z-index: 1
}

.overview-content:focus:before,
.overview-content:hover:before {
    background: rgba(0, 0, 0, .4)
}

.overview-content p {
    font-size: 24px;
    text-align: center;
    line-height: 1.1;
    margin-top: 20px
}

.overview-content .img,
.overview-content .img>* {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}

.overview-content .heading {
    color: #fff;
    z-index: 2;
    top: 50%;
    text-align: center;
    width: 100%;
    font-size: 26px;
    line-height: 1.3;
    padding: 0 50px
}

.overview-content img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

.glide {
    width: 100%;
    margin: 5em 0 0 !important
}

.glide__track,
.news-wrapper h2 {
    margin-bottom: 1.5em
}

.glide__slide {
    position: relative;
    background: #000;
    color: #fff;
    height: 100%;
    max-height: 785px;
    min-height: 785px
}

.glide__slide:hover {
    background: #3d3d3d;
    color: #000 !important
}

.glide__slide p {
    margin: 20px 0;
    padding: 1em 2em;
    color: #fff;
    font-size: 23px
}

.glide__slide p:hover,
.news-wrapper .btn-primary-white-arrow .button__text {
    color: #fff
}

.glide__slide img {
    width: 100%;
    height: 100%;
    max-height: 330px;
    min-height: 330px;
    object-fit: cover
}

.glide__bullets {
    justify-content: center;
    margin-right: -10px;
    margin-left: -10px;
    display: none
}

.glide__bullet {
    position: relative;
    display: flex;
    flex: 0 1 calc(100% / 3);
    max-width: calc(100% / 3);
    padding: 0;
    border: 0;
    overflow: hidden;
    color: #000;
    height: 40px;
    margin-right: 10px;
    margin-left: 10px;
    background-color: transparent;
    box-shadow: inset 0 -4px 0 0 #d3d3d3
}

.glide__bullet:before {
    content: "";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 4px;
    display: block;
    opacity: 0;
    transform: translateX(-100%);
    background-color: #000;
    transition: transform 5s
}

.glide__bullet--active:before {
    opacity: 1;
    transform: translateX(0)
}

.glide__slide h2 {
    font-size: 32px;
    position: absolute;
    left: 6%;
    bottom: 335px;
    z-index: 2;
    width: 100%;
    max-width: 76%;
    text-transform: capitalize;
    color: #fff;
    font-weight: 400;
    letter-spacing: .3px
}

.container-approach {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 40px;
    margin: 0 auto 5em;
    padding: 0 15px
}

.services-menu-link .content {
    color: #fff;
    position: absolute;
    z-index: 2;
    bottom: 10%;
    left: 5%;
    font-size: 30px;
    max-width: 80%
}

.services-menu-link .content h2.heading {
    font-size: 35px;
    font-weight: 400;
    display: flex;
    justify-content: start;
    padding-bottom: 10px;
    text-align: left
}

.services-menu-link .content p {
    font-size: 22px;
    display: flex;
    justify-content: start;
    margin: 0;
    text-align: left
}

button.primary-btn {
    margin-top: 20px;
    border: 1px solid #fff;
    border-radius: 7px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    width: 350px;
    height: 55px;
    align-content: center
}

.feature_property_image,
.feature_property_video {
    min-height: 100%;
    border-radius: inherit;
    transition: .5s
}

.radius_5>video {
    border-radius: 9px;
    margin: 20px
}

.feature_property_container {
    width: 100vh;
    aspect-ratio: 3/3.2;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden
}

.feature_property_image {
    object-fit: cover;
    object-position: 0px -80px;
    opacity: 1
}

.feature_property_video {
    height: 100%;
    position: absolute;
    inset: 0;
    z-index: -1
}

.team-content-contain {
    display: flex;
    text-align: center;
    flex-direction: column;
    padding: 26px 25px 30px
}

.team-content-contain h2 {
    font-size: 35px;
    line-height: 1.33
}

.team-content-contain h3 {
    font-size: 23px;
    line-height: 1.364;
    margin: 10px 0 0;
    align-content: center;
    align-items: center
}

.insights-header a,
.news-caption a {
    font-size: 25px;
    text-transform: capitalize
}

.full-width-header img {
    width: 100%;
    min-height: 600px;
    max-height: 600px;
    height: 100%;
    object-position: top;
    object-position: 62% 44%
}

.inner {
    padding-top: calc(20em / 16);
    margin: 0 3% 0 auto;
    width: calc(325 / 375 * 100%);
    overflow: hidden;
    height: 100%
}

.news-wrapper {
    padding: 0 20px;
    margin: 0 3% 5em 10px;
    width: 100%;
    overflow: hidden;
    height: 100%
}

.insights-header,
.news-caption {
    padding: 20px 15px;
    max-width: 90%
}

.wrap-slider {
    overflow: hidden;
    height: 100%;
    margin-bottom: 1.2em
}

.slider__list {
    display: flex;
    width: 100%;
    cursor: grab
}

.slider__link,
.wrap-slider img {
    display: block;
    position: relative
}

.slider__listItem {
    position: relative;
    overflow: hidden;
    flex: 0 0 auto;
    width: 100%;
    min-width: 400px;
    height: 100%
}

.slider__link {
    overflow: hidden
}

.slider__link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .38);
    opacity: 0;
    transition: opacity .3s;
    z-index: 1
}

.scroll,
.scroll::before {
    left: 0;
    background-color: #999;
    bottom: 0
}

.slider__link:hover::before {
    opacity: 1
}

.wrap-slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 390px;
    max-height: 390px;
    transition: transform .3s;
    object-position: 51% 50%;
    z-index: 0
}

.slider__link:hover img {
    transform: scale(1.1)
}

a.btn-primary-news {
    background: #000;
    border: 1px solid #000;
    height: 55px;
    display: flex;
    width: 300px;
    justify-content: center;
    text-align: center;
    align-content: center;
    color: #fff
}

.insights-header {
    font-size: 30px;
    position: relative;
    z-index: 2
}

.insights-header a {
    line-height: 1.4;
    padding-bottom: 22px;
    color: #000;
    display: block
}

.news-caption {
    position: relative;
    z-index: 2
}

.news-caption a {
    letter-spacing: 0
}

.news-link a {
    font-size: 18px;
    text-transform: uppercase;
    padding-bottom: 1px;
    border-bottom: 1px solid #000;
    font-weight: 600;
    display: inline-block;
    letter-spacing: 1px
}

.news-caption p.publication {
    font-size: 16px;
    text-transform: uppercase;
    letter-spacing: 1px
}

.news-caption a,
.news-caption p {
    margin: 0;
    transition: color .3s;
    line-height: 1;
    color: #fff;
    align-items: center
}

.news-caption a {
    position: relative;
    color: #000
}

.newsinsights-template-default .is-type-video,
.section-property-content>.section-wrapper .meta-wrapper>div.full-width,
.section-property-content>.section-wrapper .meta-wrapper>div.leasing,
.slider__listItem:hover .news-caption a::before,
.swiper-pagination .swiper-pagination-bullet-active {
    width: 100%
}

.slider__listItem:hover .news-caption a {
    color: #000
}

.scroll {
    position: absolute;
    width: 100%;
    height: 8px;
    z-index: 10
}

.swiper-scrollbar-drag {
    height: 100%;
    background-color: #000;
    border-radius: 4px;
    cursor: grab
}

.scroll::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: relative;
    left: 0 !important
}

div.wpforms-container-full button[type=submit] {
    height: 62px;
    width: 275px;
    transition: .5s ease-in-out;
    border-radius: 5px
}

div.wpforms-container-full button[type=submit]:hover {
    background: #ddd;
    color: #000;
    transition: .5s ease-in-out
}

div.wpforms-container-full button[type=submit]:not(:hover):not(:active) {
    background: #000;
    color: #fff;
    width: 275px;
    height: 62px
}

.single-projects h1,
.single-projects h2,
.single-projects h3 {
    margin: 0 0 20px;
    text-transform: capitalize;
    font-size: 24px;
    letter-spacing: .6px;
    line-height: 1.27
}

.meta-wrapper a,
.meta-wrapper p {
    letter-spacing: .011px;
    transition: 1.5s ease-in-out
}

.meta-wrapper .heading-full,
.meta-wrapper .heading,
.meta-wrapper .header {
    text-align: left;
}

.meta-wrapper .heading a,
.meta-wrapper .header a {
    text-align: left;
}

.section-property-head {
    padding: 40px 20px 50px;
    color: #fff;
    background: #000
}

.section-property-head>.section-wrapper {
    width: 100%;
    max-width: 89%;
    margin: 0 auto
}

.section-property-head>.section-wrapper>.wrapper {
    padding-top: 20px;
    text-align: center
}

.section-property-head>.section-wrapper .section-main h2 {
    margin: 0;
    letter-spacing: 1.5px;
    font-size: 26px;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
}

@media (min-width:740px) {
    .section-property-head>.section-wrapper .section-main h2 {
        font-size: 27px;
    }
}

.section-property-head>.section-wrapper .section-main .focus-market {
    display: block;
    margin-top: 7px;
    font-size: 18px;
    line-height: 1.4285714286;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #fff
}

.section-property-head>.section-wrapper a.back-to-places {
    position: relative;
    display: inline-block;
    padding-left: 45px;
    font-size: 13px;
    line-height: 1.3846153846;
    letter-spacing: 2px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff
}

.meta-wrapper a {
    font-size: 20px;
    line-height: 1.485574;
    padding: 0 0 5px
}

.meta-wrapper a:hover {
    border-bottom: 1px solid #000;
    transition: 1.5s ease-in-out
}

.section-property-content {
    padding: 0 20px;
    background: #fafafa
}

.section-property-content>.section-wrapper {
    width: 100%;
    max-width: 89%;
    margin: 0 auto;
    padding: 50px 0;
    min-height: 405px
}

.section-property-content>.section-wrapper .description h2 {
    display: flex;
    justify-content: start;
    font-size: 20px;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #000;
    border-bottom: 1px solid #000;
    padding-bottom: 1em
}

.section-property-content>.section-wrapper .description h3 {
    font-size: 24px;
    line-height: 1.3;
    text-transform: none;
    letter-spacing: .233px;
    padding-top: 10px
}

.section-property-content>.section-wrapper .description p {
    margin: 0 0 20px;
    font-size: 25px;
    line-height: 1.32
}

.section-property-content>.section-wrapper .description>:last-child {
    margin-bottom: 0;
    font-size: 22px;
    line-height: 1.24;
    letter-spacing: 0;
}

@media (max-width:1024px) {
    .section-property-content>.section-wrapper .description p {
        margin-bottom: 30px;
        font-size: 25px
    }
}

.section-property-content>.section-wrapper .meta-wrapper {
    width: 100%;
    padding: 5px;
    font-size: 20px;
    line-height: 1.3;
    display: grid
}

.section-property-content>.section-wrapper .meta-wrapper>div h4 {
    font-size: 19px;
    line-height: 1.4285714286;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #000;
    border-bottom: 1px solid #000;
    padding-bottom: 6px;
    padding-top: 6px;
    margin-bottom: 9px
}

body.single-property #content {
    padding-bottom: 140px
}

.section-custom-head,
.section-featured-property-head {
    padding: 70px 20px 100px;
    color: #fff;
    background: #000
}

.section-custom-head>.section-wrapper,
.section-featured-property-head>.section-wrapper {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto
}

.section-custom-head>.section-wrapper .section-main h2,
.section-featured-property-head>.section-wrapper .section-main h2 {
    position: relative;
    margin: 0;
    padding-top: 20px;
    font-size: 43px;
    line-height: 1.2790697674;
    font-style: italic
}

@media (max-width:992px) {

    .description h3,
    .meta-wrapper,
    .section-custom-head>.section-wrapper>.wrapper,
    .section-featured-property-head>.section-wrapper>.wrapper {
        text-align: center
    }

    .meta-wrapper {
        padding-bottom: 4em
    }

    .description h3 {
        text-transform: capitalize
    }

    .meta-wrapper h4 {
        padding: 20px 0 4px;
        letter-spacing: .6px;
        border-bottom: 1px solid #999
    }

    .meta-wrapper .header a,
    .meta-wrapper .header p {
        font-size: 20px;
        line-height: 1.6
    }

    .project_content_details h3 {
        font-weight: 500 !important;
        letter-spacing: .4px;
        color: #000;
        font-size: 23px !important;
        border-bottom: 1px solid #000;
        padding-bottom: 10px
    }

    .wp-block-separator {
        display: none !important
    }

    .project_video_head>video {
        min-height: 43vw;
        max-height: 70vh
    }

    .mobile-height-sm {
        height: 30px !important
    }

    .wp-block-cover__inner-container {
        padding: 0 !important
    }

    .section-property-content>.section-wrapper {
        padding: 30px 0
    }

    .section-custom-head>.section-wrapper .section-main h2,
    .section-featured-property-head>.section-wrapper .section-main h2 {
        font-size: 35px
    }

    .padding-section-project-wide {
        padding: 20px
    }
}

.section-custom-head>.section-wrapper .section-main h2:before,
.section-featured-property-head>.section-wrapper .section-main h2:before {
    content: "";
    display: block;
    overflow: hidden;
    height: 4px;
    width: 40px;
    background: #00254f;
    position: absolute;
    top: 0;
    left: 0
}

.section-custom-head>.section-wrapper .section-main .focus-market,
.section-featured-property-head>.section-wrapper .section-main .focus-market {
    display: block;
    margin-top: 7px;
    font-size: 14px;
    line-height: 1.4285714286;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    color: #00254f
}

.lg-outer.lg-components-open:not(.lg-zoomed) .lg-components,
.lg-outer.lg-components-open:not(.lg-zoomed) .lg-sub-html {
    opacity: 0 !important;
    display: none
}

@media (min-width:741px) {
    .section-property-head>.section-wrapper>.wrapper {
        display: flex
    }

    .section-property-head>.section-wrapper .section-action {
        width: 50%;
        text-align: center
    }

    .section-custom-head>.section-wrapper .section-action,
    .section-featured-property-head>.section-wrapper .section-action {
        width: 50%;
        display: flex;
        justify-content: flex-end;
        align-items: flex-end
    }
}

body.page-template-template-featured-property .section-stats .stats {
    max-width: 1296px
}

body.page-template-template-featured-property .section-stats .stats .stat {
    width: 20%
}

.section-description {
    margin: 100px 0;
    padding: 0 20px;
    line-height: 1.75
}

.section-description .section-container {
    width: 100%;
    max-width: 840px;
    margin: 0 auto
}

.section-description .section-container>h3:only-child {
    margin: 0;
    font-size: 22px;
    line-height: 1.5909090909;
    color: #639d37;
    font-weight: 400;
    font-style: italic
}

@media (max-width:740px) {

    .section-custom-head>.section-wrapper .section-action,
    .section-featured-property-head>.section-wrapper .section-action,
    .section-property-head>.section-wrapper .section-action {
        margin-top: 30px
    }

    .section-property-content>.section-wrapper .description h3 {
        padding-top: 0;
        font-size: 28px
    }

    .section-property-content>.section-wrapper .meta-wrapper>div {
        width: 100%;
        margin-bottom: 15px;
        text-align: left;
    }

    .section-property-content>.section-wrapper .meta-wrapper>div.size {
        padding-right: 0
    }

    body.single-property #content {
        padding-bottom: 50px
    }

    .section-custom-head,
    .section-featured-property-head {
        padding-top: 50px;
        padding-bottom: 50px
    }

    .section-custom-head>.section-wrapper .section-main h2:before,
    .section-featured-property-head>.section-wrapper .section-main h2:before {
        right: 0;
        margin: 0 auto
    }

    body.page-template-template-featured-property .section-stats .stats .stat {
        width: auto
    }

    .section-description .section-container>h3:only-child {
        font-size: 18px
    }

    .section-description {
        margin-top: 50px;
        margin-bottom: 50px
    }
}

.fullwidth-swiper {
    width: 100%;
    height: 80vh;
    min-width: 100%
}

.fullwidth-swiper .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    justify-content: center;
    align-items: center;
    width: 100%
}

.fullwidth-swiper .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 100%;
    min-height: 100%;
    object-fit: cover
}

#fullwidth-swiper-container .swiper-progress-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 2px;
    background-color: #000;
    z-index: 10
}

.lg-backdrop {
    background: #fff !important
}

.lg-outer.lg-use-transition-for-zoom .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
    padding: 40px
}

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img,
.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
    min-width: 100%;
    min-height: 600px;
    height: 100vh;
    object-fit: cover
}

.lg-outer * {
    background: 0 0 !important
}

.lg-next:hover:not(.disabled),
.lg-prev:hover:not(.disabled) {
    color: #000 !important;
    transition: .5s ease-in-out
}

.lg-counter {
    font-size: 26px;
    color: #000 !important;
    font-family: "NHaasGrotDisp55Roman", arial, sans-serif
}

.lg-next,
.lg-prev {
    font-size: 40px !important;
    color: #000 !important;
    transition: .5s ease-in-out
}

.lg-next:hover,
.lg-prev:hover {
    color: #999 !important;
    transition: .5s ease-in-out
}

.lg-show-in .lg-next,
.lg-show-in .lg-pager-outer,
.lg-show-in .lg-prev,
.lg-show-in .lg-toolbar {
    background: 0 0 !important;
    color: #000 !important
}


/* By the Numbers */
.stats-container {
    display: flex;
    justify-content: space-between;
    gap: 35px;
    margin: 3em auto;
    width: 100%;
    flex-direction: column;
}

@media (min-width: 767px) {
    .stats-container {
        gap: 30px;
        max-width: 50%;
        flex-direction: row;
    }

}

@media (min-width: 1200px) {
    .stats-container {
        gap: 40px;
        max-width: 65%;
    }
}

.stat-item {
    text-align: center;
    color: #000;
}

.stat-number {
    font-weight: 500;
    font-size: 65px;
    justify-content: center;
    width: 100%;
    display: flex;
}

@media (min-width: 992px) {
    .stat-number {
        font-size: 70px;
    }
}

@media (min-width: 1200px) {
    .stat-number {
        font-size: 90px;
    }
}

.stat-label {
    font-size: 17px;
    text-transform: uppercase;
    margin-top: 8px;
    letter-spacing: 1.5px;
    font-weight: 500;
}



.news-container {
    overflow: hidden;
    margin-bottom: 4em
}

.news-container .inner {
    margin-bottom: 5em
}

.news-container .inner h2 {
    margin-bottom: 1em;
    padding-bottom: 1em
}

.container_strategies {
    margin: 0 auto;
    padding: 5em 15px 2em;
    width: 100%;
    text-align: center;
    max-width: 100%;
    font-size: 20px
}

.container_strategies h2 {
    font-size: 28px;
    line-height: 1.2;
    margin-bottom: 10px
}

.container_strategies h3 {
    font-size: 25px;
    line-height: 1.2;
    margin: 0 auto 20px;
    max-width: 80%;
}
.investments .wp-block-columns {
    padding: 0 30px
}

@media (min-width:992px) {
    .feature-section {
        flex-direction: row-reverse;
        text-align: left;
        margin: 0 auto;
        max-width: 100%;
        padding: 60px;
    }

    .container_strategies h2 {
        font-size: 33px;
        line-height: 1.2
    }

    .investments .wp-block-columns {
        padding: 0
    }

    .focus-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 20px
    }
}

.investments.wp-block-cover,
.wp-block-cover-image {
    padding: 0 30px 2em
}

.section--columns-project {
    background: #fafafa;
    margin: 3em 0
}

.columns-project--grid {
    display: grid;
    grid-template-columns: 1fr
}

.project_block--container {
    display: flex;
    justify-content: end;
    flex-direction: column;
    padding: 30px;
    color: #000
}

@media (min-width:660px) {
    .project_block--container {
        text-align: left;
        padding: 30px 60px
    }
}

@media (min-width:792px) {
    .main-container {
        width: 90%;
        text-align: left
    }

    .general-container {
        width: 90%
    }

    .box-button {
        width: 250px
    }

    .project_block--container {
        text-align: left;
        padding: 10px 4.5%
    }
}

@media (min-width:1024px) {

    .container-approach,
    .grid-approach,
    .strategies-container {
        grid-template-columns: repeat(3, 1fr)
    }

    .feature-section {
        flex-direction: row-reverse
    }

    .feature-full-content {
        width: 100%;
        max-width: 70%;
        margin: 0
    }

    .feature-section__image-wrapper {
        min-height: 0
    }

    .feature-section__image {
        padding: 0
    }

    .feature-side {
        padding: calc(110px + 1.5vw) 4.5vw
    }

    .order-reverse {
        order: -1
    }

    .strategies-container {
        max-width: 90%;
        margin: 7.5em auto
    }

    .overview-content {
        min-height: 500px;
        margin-bottom: 1em
    }

    .glide__slide img {
        max-height: 470px;
        min-height: 470px
    }

    .glide__slide h2 {
        max-width: 87%
    }

    .glide {
        padding: 0 0 0 4em
    }

    .container-approach {
        max-width: 90%
    }

    .team-content-contain {
        gap: 100px;
        flex-direction: row;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 40px;
        text-align: left;
        padding: 6em 0 3em
    }

    .team-content-contain h3 {
        gap: 100px;
        flex-direction: row;
        margin: 0;
        justify-content: space-between;
        text-align: left
    }

    .full-width-header img {
        min-height: 685px;
        object-position: 41% 50%;
        max-height: 685px
    }

    .wrap-slider img {
        min-height: 480px;
        max-height: 480px
    }

    .section-property-head>.section-wrapper>.wrapper {
        text-align: left
    }

    .section-property-content>.section-wrapper .description h2 {
        display: flex;
        justify-content: start;
        font-size: 20px;
        line-height: 1;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 2px;
        color: #000;
        border-bottom: 1px solid #000;
        padding-bottom: 1em
    }

    .section-property-content>.section-wrapper {
        display: grid;
        grid-template-columns: 47% 1fr;
        grid-gap: 100px;
        margin-bottom: 4em;
        padding-bottom: 7em
    }

    .section-custom-head>.section-wrapper>.wrapper,
    .section-featured-property-head>.section-wrapper>.wrapper {
        display: flex
    }

    .section-custom-head>.section-wrapper .section-main,
    .section-featured-property-head>.section-wrapper .section-main {
        flex: 1;
        padding-right: 20px;
        width: 50%
    }

    .fullwidth-swiper .swiper-slide img {
        min-height: 100vh;
        height: 100vh
    }

    .lg-outer .lg-item.lg-complete.lg-zoomable .lg-dummy-img,
    .lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
        min-width: 98%;
        min-height: 900px
    }

    .news-container {
        margin-left: 2%
    }

    .columns-project--grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .project_block--container {
        padding: 0 19% 15% 5%
    }
}

@media (min-width:1300px) {
    .project_block--container {
        padding: 0 19% 10% 5%
    }
}

.project_mediablock img {
    width: 100%;
    height: 100%;
    min-height: 600px;
    max-height: 600px;
    object-fit: cover
}

.project_block--content {
    text-align: center;
    padding: 5em 65px
}

.project_block--content h2 {
    margin-bottom: 20px;
    font-size: 2em;
    text-transform: capitalize
}

.project_block--content p {
    font-size: 22px
}

.swiper-full {
    width: 100%;
    height: 100%;
    min-height: 700px;
    padding: 1rem 0 0;
    margin: 0;
    overflow: hidden;
    position: relative
}

.swiper-full .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 56%
}

@media (max-width:990px) {
    .swiper-full .swiper-slide {
        width: 100%
    }
}

.swiper-full .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100vh;
    object-fit: cover;
    border-radius: 3px
}

@media (min-width:990px) {
    .swiper-full .swiper-slide img {
        min-height: 1000px;
        max-height: 1000px
    }
}

.swiper-buttons-container {
    position: absolute;
    top: 15px;
    right: 15px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    z-index: 10
}

.swiper-button-next-custom,
.swiper-button-prev-custom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: #fff;
    width: auto;
    border-radius: 0;
    border: 1px solid #fff;
    cursor: pointer;
    transition: background-color .3s, transform .3s
}

.swiper-button-prev-custom {
    flex-direction: row-reverse
}

.swiper-button-next-custom:hover,
.swiper-button-prev-custom:hover {
    background-color: #333
}

.swiper-button-next-custom svg,
.swiper-button-prev-custom svg {
    height: 20px;
    width: 20px
}

.button-label {
    font-size: 14px;
    color: #000;
    margin: 0 5px;
    text-transform: uppercase
}

img.offset-project {
    object-fit: cover;
    width: 100%;
    height: 100%;
    max-height: 470px
}

img.offset_right_column {
    height: 600px
}

.offset_right_columnbottom {
    height: 100%;
    min-height: 58ch;
    max-height: 58ch
}

@media (min-width:1400px) {
    .cta__outer {
        padding-bottom: 7em
    }

    .portfolio-grid .featured-item__media-container {
        height: 100%;
        min-height: 30vw
    }

    div#overlay-statement h2 {
        max-width: 40%;
        font-size: 36px;
        padding: 8.5em 0
    }

    .home_image-text-overlay {
        padding-top: clamp(150px, 5vw, 10em) !important;
        padding-bottom: 0
    }

    img.offset_right_column {
        max-height: 65ch
    }
}

.swiper-pagination {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: rgba(0, 0, 0, .2)
}

.swiper-pagination .swiper-pagination-bullet {
    display: block;
    height: 100%;
    width: 0%;
    background-color: #fff;
    transition: width .3s
}

.single-projects .swiper-button-next,
.single-projects .swiper-button-prev {

    border: 1px solid #000;
    background: #fff;
    height: 45px;
    width: 45px;
    color: #000;
    transition: .5s ease-in-out
}

.single-projects .swiper-button-next:hover,
.single-projects .swiper-button-prev:hover {
    border: 1px solid #fff;
    background: #fff;
    transition: .5s ease-in-out
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 23px !important
}

.container--offset {
    width: 100%;
    padding: 0 10px
}

.offset--grid-column {
    display: grid;
    grid-template-columns: 1fr;
    padding: 20px
}

@media (min-width:992px) {
    .project_mediablock img {
        min-height: 950px;
        max-height: 950px
    }

    .project_block--content {
        padding: 0 50px;
        text-align: left
    }

    .project_block--content p {
        font-size: 23px
    }

    img.offset_right_column {
        min-height: 600px
    }


    .offset--grid-column {
        display: grid;
        grid-template-columns: 58% 1fr;
        grid-gap: 25px
    }

    .offset--grid-column .column-content {
        margin-right: 60px;
        grid-gap: 10px
    }
}

.container-investment-focus,
.offset--grid-column-quarters {
    display: grid;
    grid-template-columns: 1fr
}

@media (min-width:992px) {
    .offset--grid-column-quarters {
        display: grid;
        grid-template-columns: 58% 1fr;
        grid-gap: 75px
    }
}

.offset--grid--quarters .column-content,
.offset--grid-column-quarters .column-content {
    display: flex;
    flex-direction: column;
    justify-content: end
}

.offset--grid-column img {
    height: 100%;
    max-height: 800px
}

.offset--grid-column-quarters .column-media img,
.offset--grid-long .column-media img {
    aspect-ratio: 3/4;
    object-fit: cover;
    width: 100%;
    max-height: 54vw
}

.offset--grid-long {
    display: flex;
    flex-direction: column-reverse;
    padding: 20px
}

.column-content {
    display: flex;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    padding: 2em 30px
}

@media (min-width:776px) {
    .column-content {
        justify-content: end;
        margin-bottom: 4em
    }
}

@media (min-width:600px) {
    .column-content .button--lrg {
        margin: 1.4em auto 0
    }
}






.content--contain {
    padding: 20px
}

.container-content {
    width: 100%;
    margin: 1.5em auto
}

.container-content ul {
    font-size: 23px;
    line-height: 1.1;
    list-style: circle;
    margin-left: 30px;
    padding-bottom: 30px
}

ul.wp-block-list>li {
    margin-left: 25px;
    font-size: 21px;
    padding-bottom: 10px;
    list-style: circle
}


.focus-grid {
    grid-gap: 20px;
    width: 100%;
    padding: 15px;
    display: grid;
    margin: 0 auto 7em
}

@media (min-width:1024px) {

    .feature-body-content h3,
    .feature-full-content h3 {
        font-size: 18px
    }

    .column-content {
        text-align: left
    }

    .column-content .button--lrg {
        margin: 1em 0
    }

    .container-investment-focus {
        grid-template-columns: repeat(2, 1fr);
        grid-template-columns: repeat(3, 1fr)
    }
}

.investment-focus-item {
    align-content: flex-end;
    align-items: flex-end;
    aspect-ratio: 1/1;
    cursor: pointer;
    display: flex;
    overflow: hidden;
    padding: 0 30px;
    position: relative
}

@media (min-width:992px) {
    .offset--grid-long {
        display: grid;
        grid-template-columns: 1fr 59%;
        grid-gap: 75px
    }

    .focus-grid {
        max-width: 90%;
        grid-gap: 15px;
        grid-template-columns: repeat(3, 1fr);
        padding: 0
    }

    .investment-focus-item {
        aspect-ratio: 1/1.4
    }
}

@media (hover:hover) {
    .u-link-underline:hover {
        border-bottom-color: #0000
    }

    .u-link-underline-reverse:hover {
        border-bottom-color: #2f4b54
    }

    .property-thumb:hover .property-bioimage img {
        transform: scale(1.12)
    }

    .site-footer__client-access a:hover,
    .site-footer__fax a:hover,
    .site-footer__nav a:hover,
    .site-footer__phone a:hover {
        opacity: 1
    }

    .site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__nav>a:hover,
    .site-header.--transparent-header:not(.--is-toggled):not(.--is-scrolled) .site-header__sub-nav-ctr>a:hover,
    .site-header__nav .site-header__sub-nav-ctr>a:hover,
    .site-header__nav>a:hover {
        border-bottom-color: none
    }

    .site-header__sub-nav-ctr:hover>a {
        border-bottom-color: #fff
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav {
        opacity: 1;
        pointer-events: all
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a {
        opacity: 1;
        transform: none
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(2) {
        transition-delay: .15s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(3) {
        transition-delay: .25s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(4) {
        transition-delay: .35s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(5) {
        transition-delay: .45s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(6) {
        transition-delay: .55s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(7) {
        transition-delay: .65s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(8) {
        transition-delay: .75s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(9) {
        transition-delay: .85s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav>a:nth-child(10) {
        transition-delay: .95s
    }

    .site-header__sub-nav-ctr:hover .site-header__sub-nav-inner {
        transform: none
    }

    .site-header__sub-nav>a:hover span {
        border-bottom: 1px solid #fff
    }

    .investment-focus-item:hover .focus-type img,
    .team-thumb:hover .team-bioimage img {
        transform: scale(1.05);
        overflow: hidden
    }

    .property-pagination__page:hover .property-pagination__page-icon {
        background-color: #000;
        border-color: #000
    }
}

@media (min-width:49.375em) {
    .property-pagination__current-page {
        background-color: #fff;
        border-color: #fff
    }

    .property-pagination__ellipsis {
        margin: 0 10px
    }

    .property-pagination.--properties-page {
        padding-bottom: 0;
        padding-top: 48px
    }

    .investment-focus-item {
        aspect-ratio: 6/7
    }
}

.focus-type:before {
    background: linear-gradient(0deg, #000000a6, #0000);
    content: "";
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    transition: background .15s linear;
    width: 100%;
    z-index: 2
}

.focus-content {
    position: absolute;
    color: #fff;
    bottom: 30px;
    z-index: 3
}

.focus-content h3 {
    font-size: 25px;
    line-height: 1.1;
    padding-bottom: 20px;
    letter-spacing: 0
}

.focus-content p {
    font-size: 21px;
    line-height: 1.255;
    font-weight: 400;
    max-width: 90%;
    letter-spacing: .4px
}

.contact-container h2,
.contact-container h3 {
    padding-bottom: 2px;
}

@media (min-width:767px) {
    .focus-content h3 {
        font-size: 27px;
        padding-bottom: 5px
    }

    .focus-content p {
        font-size: 19px;
        max-width: 70%
    }
}

.feature-body-content h2,
.feature-full-content h2 {
    font-size: clamp(2.5rem, 4vmin, 2rem);
    padding-bottom: 20px;
}


@media (min-width:1200px) {
    .single-post-header h2 {
        letter-spacing: 0;
        padding: 0 0 5px;
        width: 100%;
        margin: 0;
        font-size: 29px
    }

    .hero--video h1.video--header {
        font-size: 48px
    }

    .feature-body-content h2,
    .feature-full-content h2 {
        max-width: 80%
    }

    .section-property-content>.section-wrapper .meta-wrapper {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 20px 45px
    }

    .focus-content h3 {
        font-size: 29px;
        padding-bottom: 3px
    }

    .focus-content p {
        max-width: 74%
    }
}

.investment-spotlight-container {
    padding-bottom: 5em;
    margin: 0 auto;
    width: 100%
}

.investment-spotlight-container .grid-wrapper>div {
    display: flex;
    justify-content: center;
    align-items: center
}

.investment-spotlight-container .grid-wrapper>div>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 1px;
    position: relative
}

.investment-spotlight-container .grid-wrapper>div>img:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, .9);
    z-index: 3;
    transition: .6s ease-in-out
}

.investment-spotlight-container .grid-wrapper {
    display: grid;
    grid-gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(475px, 1fr));
    grid-auto-rows: 441px;
    grid-auto-flow: dense;
}

.investment-spotlight-container .grid-wrapper .wide {
    grid-column: span 1
}

.investment-spotlight-container .grid-wrapper .big {
    grid-column: span 2;
    grid-row: span 2
}

.investment-spotlight-container .grid-wrapper h3 {
    position: absolute;
    color: #fff;
    width: 400px;
    z-index: 3;
    text-align: center
}

.contact-container {
    margin: 4em auto;
    width: 100%;
    display: block;
    padding: 0 15px
}

.contact-container h2 {
    border-bottom: 1px solid #dbdbdb;
    font-size: 26px;
    margin-bottom: 20px;
    padding-bottom: 11px;
}

.contact-container h3 {
    font-size: 17px;
    border-bottom: 1px solid #8e8e8e;
    display: inline-block;
    margin-bottom: 6px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase
}

.contact-container .column a,
.contact-container .column p {
    font-size: 20px;
    letter-spacing: .3px;
    display: block;
    line-height: 1.4;
    margin-bottom: 20px
}

@media (min-width:992px) {

    .btn_main_inner,
    .flex-center,
    .layer {
        justify-content: center
    }

    .contact_component,
    .grid-1-3,
    .grid-2-columns {
        grid-template-rows: auto
    }

    .investment-spotlight-container {
        padding: 4em 4em 9em
    }

    .investment-spotlight-container .grid-wrapper {
        padding: 2em 0
    }

    .investment-spotlight-container .grid-wrapper .wide {
        grid-column: span 2
    }

    .overview-content .heading,
    .overview-content:before {
        position: absolute;
        transition: .6s ease-in-out;
        left: 0
    }

    .flickity-enabled,
    .line-wrapper,
    .overview-content,
    .relative,
    .section_about-grid,
    .section_contact,
    .section_floors,
    .section_info-image,
    .section_slider,
    .u-position-relative {
        position: relative
    }

    .lazyfade,
    .lazysvg,
    img.is-loading.lazygradient,
    img.lazyload.lazygradient {
        opacity: 0
    }

    .gallery-btn svg,
    img {
        vertical-align: middle
    }

    .uppercase,
    .uppercase-text {
        text-transform: uppercase
    }

    .button.is-link.is-icon,
    .button.is-link.is-icon.is-slider,
    .grid-2-columns.is-small {
        grid-column-gap: 1.5rem;
        grid-row-gap: 1.5rem
    }

    .hero__image img,
    .section-bg.is-bottom.is-middle.background-color-white,
    .section-bg.is-bottom.is-small.background-color-tertiary,
    .section-bg.is-bottom.is-small.background-color-white.z-index-2 {
        z-index: 0
    }

    .button,
    .button.is-link,
    .footer_link.is-name:hover {
        text-decoration: none
    }

    .container-large,
    .header_heading-wrapper,
    .margin-bottom.margin-huge,
    .title_box {
        container-type: inline-size
    }

    .contact-container {
        max-width: 85%;
        display: grid;
        grid-template-columns: 30% 1fr;
        grid-gap: 105px
    }

    .overview-content {
        display: block;
        text-align: center;
        margin-bottom: .6em
    }

    .overview-content:before {
        content: "";
        top: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, .3);
        z-index: 1
    }

    .overview-content:focus:before,
    .overview-content:hover:before {
        background: rgba(0, 0, 0, .4)
    }

    .overview-content p {
        font-size: 24px;
        text-align: center;
        line-height: 1.1;
        margin-top: 20px
    }

    .overview-content .img,
    .services-menu-link .img {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0
    }

    .overview-content .heading {
        color: #fff;
        z-index: 2;
        top: 50%;
        text-align: center;
        width: 100%;
        font-size: 26px;
        line-height: 1.3;
        padding: 0 50px
    }

    .flickity-page-dots,
    ul {
        list-style: none;
        margin: 0;
        padding: 0
    }

    .overview-content img {
        height: 100%;
        width: 100%;
        object-fit: cover
    }

    .wpforms-container ::-webkit-input-placeholder {
        color: #3b3b3b !important
    }

    .wpforms-container :-moz-placeholder {
        color: #3b3b3b !important;
        opacity: 1 !important
    }

    .wpforms-container ::-moz-placeholder {
        color: #1b1b1b !important;
        opacity: 1 !important
    }

    .wpforms-container :-ms-input-placeholder {
        color: #3b3b3b !important
    }

    .wpforms-container ::-ms-input-placeholder {
        color: #080808 !important
    }

    .wpforms-container ::placeholder {
        color: #080808 !important
    }

    .wp-core-ui div.wpforms-container-full input[type=date],
    .wp-core-ui div.wpforms-container-full input[type=datetime-local],
    .wp-core-ui div.wpforms-container-full input[type=datetime],
    .wp-core-ui div.wpforms-container-full input[type=email],
    .wp-core-ui div.wpforms-container-full input[type=month],
    .wp-core-ui div.wpforms-container-full input[type=number],
    .wp-core-ui div.wpforms-container-full input[type=password],
    .wp-core-ui div.wpforms-container-full input[type=range],
    .wp-core-ui div.wpforms-container-full input[type=search],
    .wp-core-ui div.wpforms-container-full input[type=tel],
    .wp-core-ui div.wpforms-container-full input[type=text],
    .wp-core-ui div.wpforms-container-full input[type=time],
    .wp-core-ui div.wpforms-container-full input[type=url],
    .wp-core-ui div.wpforms-container-full input[type=week],
    div.wpforms-container-full input[type=date],
    div.wpforms-container-full input[type=datetime-local],
    div.wpforms-container-full input[type=datetime],
    div.wpforms-container-full input[type=email],
    div.wpforms-container-full input[type=month],
    div.wpforms-container-full input[type=number],
    div.wpforms-container-full input[type=password],
    div.wpforms-container-full input[type=range],
    div.wpforms-container-full input[type=search],
    div.wpforms-container-full input[type=tel],
    div.wpforms-container-full input[type=text],
    div.wpforms-container-full input[type=time],
    div.wpforms-container-full input[type=url],
    div.wpforms-container-full input[type=week],
    div.wpforms-container-full select,
    div.wpforms-container-full textarea {
        border: 1px solid #999;
        height: 60px
    }

    /*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
    .flickity-enabled:focus {
        outline: 0
    }

    .flickity-viewport {
        height: 100%;
        overflow: hidden;
        position: relative
    }

    .flickity-slider {
        height: 100%;
        position: absolute;
        width: 100%
    }

    .flickity-enabled.is-draggable {
        -webkit-tap-highlight-color: transparent;
        user-select: none
    }

    .flickity-enabled.is-draggable .flickity-viewport {
        cursor: move;
        cursor: grab
    }

    .flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
        cursor: grabbing
    }

    .flickity-button {
        background: #ffffffbf;
        border: none;
        color: #333;
        position: absolute
    }

    .flickity-button:hover {
        background: #fff;
        cursor: pointer
    }

    .flickity-button:focus {
        box-shadow: 0 0 0 5px #19f;
        outline: 0
    }

    .flickity-button:active {
        opacity: .6
    }

    .flickity-button:disabled {
        cursor: auto;
        opacity: .3;
        pointer-events: none
    }

    .flickity-button-icon {
        fill: currentColor
    }

    .flickity-prev-next-button {
        border-radius: 50%;
        height: 44px;
        top: 50%;
        transform: translateY(-50%);
        width: 44px
    }

    .flickity-prev-next-button.previous {
        left: 10px
    }

    .flickity-prev-next-button.next {
        right: 10px
    }

    .flickity-rtl .flickity-prev-next-button.previous {
        left: auto;
        right: 10px
    }

    .flickity-rtl .flickity-prev-next-button.next {
        left: 10px;
        right: auto
    }

    .flickity-prev-next-button .flickity-button-icon {
        height: 60%;
        left: 20%;
        position: absolute;
        top: 20%;
        width: 60%
    }

    .flickity-page-dots {
        bottom: -25px;
        line-height: 1;
        position: absolute;
        text-align: center;
        width: 100%
    }

    .flickity-rtl .flickity-page-dots {
        direction: rtl
    }

    .flickity-page-dots .dot {
        background: #333;
        border-radius: 50%;
        cursor: pointer;
        display: inline-block;
        height: 10px;
        margin: 0 8px;
        opacity: .25;
        width: 10px
    }

    .image-text--container .image-text__text,
    figure {
        margin-bottom: 3rem
    }

    .flickity-page-dots .dot.is-selected,
    img.is-loading.lazygradient .lazyloaded,
    img.lazyload.lazygradient .lazyloaded {
        opacity: 1
    }

    .t-heading-m,
    .t-heading-m-serif {
        font-size: 24px;
        font-weight: 400;
        letter-spacing: -.02em;
        line-height: 1.33333333
    }

    .rtf h4,
    .t-heading-s-serif {
        font-size: 16px;
        font-weight: 400;
        letter-spacing: -.01em;
        line-height: 1.5
    }

    .rtf h6:not(.eyebrow),
    .rtf.--large-body p,
    .t-body-xl {
        font-size: 18px;
        font-style: normal;
        font-weight: 400;
        letter-spacing: -.02em;
        line-height: 1.33
    }

    .t-body-xl-serif {
        font-size: 40px;
        font-style: normal;
        font-weight: 400;
        letter-spacing: .02em;
        line-height: 1.3
    }

    .rtf h5,
    .t-body-l-serif {
        font-size: 24px;
        font-style: normal;
        font-weight: 300;
        letter-spacing: .02em;
        line-height: 1.5
    }

    @media (min-width:49.375em) {
        .t-heading-m {
            font-size: 36px;
            line-height: 1.16666667
        }

        .t-heading-m-serif {
            font-size: 35px;
            line-height: 1.16666667
        }

        .rtf h4,
        .rtf h6:not(.eyebrow),
        .rtf.--large-body p,
        .t-body-xl,
        .t-heading-s-serif {
            font-size: 21px
        }

        .t-body-xl-serif {
            font-size: 40px
        }

        .rtf h5,
        .t-body-l-serif {
            font-size: 28px;
            line-height: 1.375
        }
    }

    .error404 .content-area .error-404 .page-header h1,
    .error404 .content-area .error-404 .page-header h2,
    .error404 .content-area .error-404 .page-header h3,
    .t-body-w,
    .text-line {
        color: #fff
    }

    .rtf ul,
    .t-body-m {
        font-size: 23px;
        font-style: normal;
        font-weight: 400;
        line-height: 1.475
    }

    .c_white,
    .pagination-nav,
    .t-body-16-medium {
        color: #000;
        line-height: 1.45;
        font-weight: 500;
        font-style: normal
    }

    .pagination-nav,
    .t-body-16-medium {
        font-size: 20px;
        padding: 0
    }

    .c_white {
        font-size: 20px
    }

    .u-container {
        margin: 0 auto;
        width: 90%
    }

    .gallery__inner a:last-of-type {
        margin-right: 0
    }

    .u-overflow-hidden {
        overflow: hidden;
        position: relative
    }

    .text-weight-medium,
    .u-medium {
        font-weight: 500
    }

    .u-grid {
        grid-gap: 0;
        display: grid;
        grid-template-columns: repeat(8, 1fr)
    }

    .lazyfade {
        transition: opacity .15s linear
    }

    .lazyfade.is-loaded,
    .lazysvg.is-loaded {
        opacity: 1;
        padding-bottom: 0 !important
    }

    .lazysvg {
        transition: opacity .15s linear, transform 1s cubic-bezier(.19, 1, .22, 1)
    }

    .lazyfade-and-slide {
        opacity: 0;
        transform: translateY(60px);
        transition: opacity .5s linear, transform 1s cubic-bezier(.19, 1, .22, 1)
    }

    .lazyfade-and-slide.is-loaded {
        padding-bottom: 0 !important
    }

    .lazyfade-and-slide.is-loaded.--is-visible {
        opacity: 1;
        transform: none
    }

    @media (min-width:35em) {
        .u-until-small {
            display: none
        }
    }

    @media (min-width:80em) {
        .t-heading-m {
            font-size: 41px
        }

        .rtf h4,
        .rtf h6:not(.eyebrow),
        .rtf.--large-body p,
        .t-body-xl,
        .t-heading-s-serif {
            font-size: 24px
        }

        .t-body-xl-serif {
            font-size: 40px;
            line-height: 1.14285714
        }

        .rtf h5,
        .t-body-l-serif {
            font-size: 32px
        }

        .rtf ol,
        .rtf ul,
        .t-body-m {
            font-size: 22px;
            line-height: 1.48
        }

        .u-until-xlarge {
            display: none
        }
    }

    @media (max-width:34.99em) {
        .u-small-up {
            display: none
        }
    }

    @media (max-width:63.99em) {
        .u-large-up {
            display: none
        }
    }

    .footer_link.office,
    .slide-nav.hide-desktop,
    .u-hidden {
        display: none
    }

    .button,
    .flex-center,
    .services-menu-link,
    .text-center,
    .utility_form-block,
    figcaption {
        text-align: center
    }

    .pswp__button--close {
        height: 24px;
        top: 32px;
        width: 24px
    }

    .pswp__button--zoom {
        display: none !important
    }

    .full-width-img {
        overflow: hidden;
        position: relative;
        z-index: 2
    }

    .full-width-img__inner {
        margin-left: calc(9.75% + 2px);
        position: relative;
        width: 90.25%;
        z-index: 1
    }

    .full-width-img__inner img,
    .w-full {
        width: 100%
    }

    .gallery-btn {
        font-size: 24px
    }

    .gallery-btn svg {
        margin-right: 6px;
        margin-top: -2px
    }

    .gallery__inner a img,
    img {
        display: block
    }

    .gallery-btn span {
        font-size: .6em;
        vertical-align: top
    }

    .gallery {
        background-color: #eeece9;
        overflow: hidden;
        padding-bottom: 40px;
        position: relative;
        width: 100vw
    }

    .gallery__heading {
        margin-bottom: 40px
    }

    @media (min-width:64em) {
        .u-grid {
            grid-template-columns: repeat(16, 1fr)
        }

        .u-until-large {
            display: none
        }

        .gallery__heading {
            margin-bottom: 60px
        }
    }

    .gallery__inner {
        overflow: visible
    }

    .content-ratio,
    .error404 .content-area .error-404,
    .header_heading-wrapper.is-70-width.is_hero_text,
    .overflow-hidden {
        overflow: hidden
    }

    .gallery__inner a {
        cursor: zoom-in;
        display: block;
        height: 70vh;
        margin-right: 25px;
        position: relative
    }

    @media (max-width:49.365em) {
        .u-medium-up {
            display: none
        }

        .full-width-img {
            padding-top: calc(20vw + 2px)
        }

        .full-width-img:before {
            background-image: url(/static/grid-pattern-mobile.svg);
            background-position: 0 0;
            background-repeat: no-repeat;
            background-size: 100% auto;
            height: 100%;
            top: 0
        }

        .full-width-img:after,
        .full-width-img:before {
            content: "";
            left: 0;
            position: absolute;
            width: 100%
        }

        .full-width-img:after {
            background: linear-gradient(180deg, #eeece900, #eeece966 28.48%, #eeece9);
            bottom: 0;
            height: 50%
        }

        .full-width-img__inner img {
            aspect-ratio: 1/1.3;
            object-fit: cover
        }

        .gallery__inner a {
            aspect-ratio: 16/9 !important;
            background-color: #d9d5d0;
            height: auto !important;
            margin-right: 16px;
            width: 100%
        }

        .gallery__inner a img.--tall {
            object-fit: contain !important
        }
    }

    .gallery__inner a img,
    .hero__image img {
        height: 100%;
        width: 100%;
        object-fit: cover;
        top: 0;
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0
    }

    .gallery__progress {
        background-color: #d9d5d0;
        height: 1px;
        margin-top: 30px;
        position: relative;
        width: 100%
    }

    @media (min-width:49.375em) {

        .c_white,
        .pagination-nav,
        .t-body-16-medium {
            font-size: 16px
        }

        .u-container {
            width: 80%
        }

        .u-until-medium {
            display: none
        }

        .pswp__button--arrow--prev {
            left: 5%
        }

        .pswp__button--arrow--next,
        .pswp__button--close {
            right: 5%
        }

        .pswp__button--close {
            top: 60px
        }

        .full-width-img__inner {
            margin-left: 5%;
            width: 95%
        }

        .gallery {
            padding-bottom: 96px
        }

        .gallery__progress {
            margin-top: 35px
        }
    }

    .container-sections {
        width: 100%;
        margin: 0 auto;
        padding: 20px
    }

    .align-center,
    .container-small,
    .image-text__inner,
    .mx-auto,
    .utility_image {
        margin-left: auto;
        margin-right: auto
    }

    .min-h-screen {
        min-height: 100vh
    }

    .flex,
    .flex-center {
        display: flex
    }

    .grid {
        display: grid
    }

    .grid-cols-12 {
        grid-template-columns: repeat(12, minmax(0, 1fr))
    }

    .justify-end {
        justify-content: flex-end
    }

    .padding-section-medium.is-bottom-0.is-top-small,
    .pt-8 {
        padding-top: 2rem
    }

    .image-text--container,
    .padding-horizontal,
    .padding-horizontal.padding-0,
    .padding-horizontal.padding-custom1,
    .padding-horizontal.padding-custom2,
    .padding-horizontal.padding-custom3,
    .padding-horizontal.padding-huge,
    .padding-horizontal.padding-large,
    .padding-horizontal.padding-medium,
    .padding-horizontal.padding-small,
    .padding-horizontal.padding-tiny,
    .padding-horizontal.padding-xhuge,
    .padding-horizontal.padding-xlarge,
    .padding-horizontal.padding-xsmall,
    .padding-horizontal.padding-xxhuge,
    .padding-horizontal.padding-xxlarge,
    .padding-horizontal.padding-xxsmall {
        padding-top: 0;
        padding-bottom: 0
    }

    .image-text--container p {
        font-size: 21px
    }

    .hero+.image-text.image-text--container {
        padding-top: 1.5rem
    }

    .image-text__inner {
        width: 100%;
        display: flex;
        flex-direction: column-reverse
    }

    .image-text__inner p,
    .project_offset_blocks p,
    .property_content_block p {
        font-size: 24px
    }

    @media (min-width:834px) {
        .image-text--container {
            padding-top: 10rem;
            padding-bottom: 10rem
        }

        .hero+.image-text.image-text--container {
            padding-top: 3.5rem
        }

        .image-text__inner {
            max-width: 100%;
            flex-direction: unset;
            padding-left: 3rem;
            padding-right: 3rem
        }
    }

    @media (min-width:1440px) {
        .image-text__inner {
            padding-left: 5.25rem;
            padding-right: 5.25rem
        }
    }

    .image-text__inner,
    .padding-vertical,
    .padding-vertical.padding-0,
    .padding-vertical.padding-custom1,
    .padding-vertical.padding-custom2,
    .padding-vertical.padding-custom3,
    .padding-vertical.padding-huge,
    .padding-vertical.padding-large,
    .padding-vertical.padding-medium,
    .padding-vertical.padding-small,
    .padding-vertical.padding-tiny,
    .padding-vertical.padding-xhuge,
    .padding-vertical.padding-xlarge,
    .padding-vertical.padding-xsmall,
    .padding-vertical.padding-xxhuge,
    .padding-vertical.padding-xxsmall {
        padding-left: 0;
        padding-right: 0
    }

    .image-text--container .image-text__inner {
        width: 100%;
        padding: 0 15px
    }

    @media (min-width:834px) {
        .image-text--container .image-text__inner {
            padding-left: 3rem;
            padding-right: 3rem
        }

        .sm\:w-1\/2 {
            width: 50%
        }
    }

    .image-text--left .image-text__inner {
        flex-direction: row-reverse
    }

    .flex-col,
    .utility_form-block {
        flex-direction: column
    }

    .uppercase-text {
        margin-bottom: 2em;
        font-size: 18px;
        letter-spacing: 1px
    }

    img {
        width: 100%;
        object-fit: cover
    }

    @media (min-width:1440px) {
        .image-text--container .image-text__inner {
            padding-left: 5.25rem;
            padding-right: 5.25rem
        }

        .lg\:pb-4 {
            padding-bottom: 1rem
        }
    }

    .footer9_logo-link,
    .image-text--image-padding.image-text--container .image-text__image {
        padding-left: 0
    }

    .image-text--default .image-text__text {
        padding: 5em 2.5em
    }

    @media (min-width:834px) {
        .image-text--container .image-text__text {
            margin-bottom: 6em
        }

        .image-text--image-padding.image-text--container .image-text__image {
            padding-left: 4rem
        }

        .image-text--container .image-text__inner>:not([hidden])~:not([hidden]) {
            margin-right: calc(1.5rem * var(--tw-space-x-reverse));
            margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)))
        }

        .image-text--default .image-text__text {
            padding: 2rem 2rem 4rem
        }

        .image-text--default.image-text--left .image-text__text {
            padding-left: 4rem;
            padding-right: 3rem;
            padding-bottom: 7em
        }

        .sm\:grid {
            display: grid
        }

        .sm\:gap-6 {
            gap: 1.5rem
        }

        .sm\:text-sm {
            font-size: .875rem;
            line-height: 1.09375rem
        }

        .sm\:pr-0 {
            padding-right: 0
        }

        .sm\:mt-12 {
            margin-top: 3rem
        }

        .sm\:mb-0 {
            margin-bottom: 0
        }

        .sm\:w-auto {
            width: auto
        }
    }

    @media (min-width:1440px) {
        .image-text--default .image-text__text {
            padding-left: 5.25rem;
            padding-right: 3rem
        }

        .image-text--default.image-text--left .image-text__text {
            padding-right: 5.25rem;
            padding-left: 5rem
        }
    }

    .grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .tracking-widest {
        letter-spacing: .15em
    }

    .pt-14 {
        padding-top: 3.5rem
    }

    .mb-3 {
        margin-bottom: .75rem
    }

    .max-w-xl {
        max-width: 36rem
    }

    .pr-16 {
        padding-right: 4rem
    }

    .mt-8 {
        margin-top: 2rem
    }

    .content-ratio {
        position: relative;
        height: 0;
        width: 100%;
        line-height: 1
    }

    .mb-10 {
        margin-bottom: 2.5rem
    }

    .border-t {
        border-top-width: 1px
    }

    .text-2xl {
        font-size: 2.1em;
        line-height: 1.875rem
    }

    .font-light {
        font-weight: 300
    }

    @media (min-width:1194px) {
        .image-text--container .image-text__inner>:not([hidden])~:not([hidden]) {
            margin-right: calc(6rem * var(--tw-space-x-reverse));
            margin-left: calc(6rem * calc(1 - var(--tw-space-x-reverse)))
        }

        .image-text--default .image-text__text {
            padding-top: 0;
            padding-bottom: 6.5rem
        }

        .md\:mt-14 {
            margin-top: 3.5rem
        }

        .md\:text-xl {
            font-size: 1.25rem;
            line-height: 1.75rem
        }

        .md\:text-3xl {
            font-size: 2.23em;
            line-height: 1.3
        }
    }

    .content-ratio img {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        object-fit: cover;
        width: 100%
    }

    .py-4 {
        padding-top: 1rem;
        padding-bottom: 1rem
    }

    .font-extralight {
        font-weight: 200
    }

    .leading-none {
        line-height: 1
    }

    .gap-6 {
        gap: 1.5rem
    }

    .pt-10 {
        padding-top: 2.5rem
    }

    .h-full,
    .image.full-height,
    .single-projects img.full-width-swiper-img {
        height: 100%
    }

    .gap-4 {
        gap: 1rem
    }

    .portrait {
        height: 55vw;
        object-fit: cover
    }

    .pad-bottom-3 {
        padding-bottom: 3em
    }

    .pad-bottom-5 {
        padding-bottom: 5em
    }

    .t-layout p {
        font-size: 22px;
        letter-spacing: .5px;
        line-height: 1.51
    }

    .title-header h2 {
        text-transform: capitalize;
        letter-spacing: 1px
    }

    .services-menu-link {
        display: block;
        position: relative;
        height: 35vw;
        margin-bottom: .6em
    }

    @media (min-width:480px) {
        .services-menu-link {
            height: 31vw;
            margin-bottom: 1em
        }
    }

    .services-menu-link:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        background: rgba(0, 0, 0, .5);
        z-index: 1;
        transition: .5s
    }

    .button.is-link,
    .button.is-link.is-alternate,
    .button.is-secondary,
    .button.is-secondary.is-alternate {
        background-color: #0000
    }

    .header_heading-span,
    .header_heading-span.is-2,
    .header_heading-span.is-3 {
        background-position: 100%;
        background-size: contain
    }

    .services-menu-link .heading {
        color: #fff;
        position: absolute;
        z-index: 2;
        top: 50%;

        transform: translateY(-50%);
        text-align: center;
        left: 0;
        width: 100%
    }

    label {
        margin-bottom: 5px;
        font-weight: 700;
        display: block
    }

    figure {
        margin-top: 3rem
    }

    figcaption {
        margin-top: .25rem
    }

    .z-index-2 {
        z-index: 2;
        position: relative
    }

    .max-width-full {
        width: 100%;
        max-width: none
    }

    .layer {
        align-items: center;
        position: absolute;
        inset: 0%
    }

    .max-width-xlarge {
        width: 100%;
        max-width: 42rem
    }

    .max-width-medium {
        width: 100%;
        max-width: 33rem
    }

    .max-width-xsmall {
        width: 100%;
        max-width: 25rem
    }

    .hide-mobile-landscape {
        width: 3rem;
        height: 3rem
    }

    .max-width-xxsmall {
        width: 100%;
        max-width: 20rem
    }

    .container-large {
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding: 4em 4%
    }

    .max-width-xxlarge {
        width: 100%;
        max-width: 75%
    }

    .spacing-clean {
        margin: 0;
        padding: 0
    }

    .max-width-large {
        width: 100%;
        max-width: 38rem
    }

    .max-width-small {
        width: 100%;
        max-width: 30rem
    }

    .main-wrapper {
        opacity: 1;
        overflow: clip
    }

    .container-medium,
    .v-flex-huge.is-first {
        width: 100%;
        max-width: 100rem;
        margin-left: auto;
        margin-right: auto
    }

    .container-small {
        width: 100%;
        max-width: 48rem
    }

    .margin-tiny {
        margin: .25rem
    }

    .margin-xxsmall {
        margin: .5rem
    }

    .margin-xsmall {
        margin: 1rem
    }

    .margin-small {
        margin: 1.5rem
    }

    .margin-medium {
        margin: 2rem
    }

    .margin-large {
        margin: 3rem
    }

    .margin-xlarge {
        margin: 4rem
    }

    .margin-xxlarge {
        margin: 5rem
    }

    .margin-huge {
        margin: 6rem
    }

    .margin-xhuge {
        margin: 7rem
    }

    .margin-xxhuge {
        margin: 10rem
    }

    .padding-0,
    .project-single-header {
        padding: 0
    }

    .padding-tiny {
        padding: .25rem
    }

    .overflow-scroll {
        overflow: scroll
    }

    .overflow-auto {
        overflow: auto
    }

    .text-size-medium {
        letter-spacing: -.03em;
        font-weight: 300
    }

    .text-size-medium.slide-in.contact-link {
        padding-top: .4rem;
        padding-bottom: .4rem
    }

    .margin-top-auto {
        margin-top: auto
    }

    .text-style-quote {
        margin-bottom: 0;
        padding: .75rem 1.25rem;
        font-size: 1.25rem;
        line-height: 1.5
    }

    .heading-style-h2 {
        font-size: 3rem;
        font-weight: 700;
        line-height: 1.2
    }

    .heading-style-h5 {
        font-size: 1.5rem;
        font-weight: 700;
        line-height: 1.4
    }

    .heading-style-h1 {
        font-size: 3.5rem;
        font-weight: 700;
        line-height: 1.2
    }

    .text-size-tiny {
        font-size: .75rem
    }

    .form_field-label {
        margin-bottom: .5rem;
        font-weight: 400
    }

    .button {
        letter-spacing: .04em;
        padding: .75rem 1.5rem;
        font-weight: 300
    }

    .button.is-small {
        padding: .5rem 1.25rem
    }

    .button.is-small.is-icon-only {
        padding-left: .5rem;
        padding-right: .5rem
    }

    .rl-styleguide_spacing {
        border: 1px dashed #d3d3d3
    }

    .global-container,
    .padding-global {
        width: 100%;
        padding-left: 4%;
        padding-right: 4%
    }

    .global-project {
        width: 100%;
        margin: 0 auto
    }

    .padding-left-offset {
        width: 100%;
        padding-left: 3%;
        padding-right: 3%
    }

    .padding-global.rel-z {
        z-index: 5;
        position: relative
    }

    .padding-section-medium {
        padding-top: 4rem;
        padding-bottom: 4rem
    }

    .padding-section-medium.is-flex {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        display: flex;
        position: relative
    }

    .padding-section-medium.is-flex.is-hero-home {
        padding-top: 4vw;
        padding-bottom: 4vw
    }

    .aspect-ratio-square {
        aspect-ratio: 1
    }

    .aspect-ratio-portrait {
        aspect-ratio: 2/3
    }

    .aspect-ratio-landscape,
    .hero_background-image.aspect-ratio-landscape,
    .hero_background-image.landscape-desktop-different-mobile {
        aspect-ratio: 3/2
    }

    .aspect-ratio-widescreen,
    .hero_background-image.is-widescreen {
        aspect-ratio: 16/9
    }

    .h-flex-small.is-bottom,
    .h-flex-tiny.is-bottom {
        align-items: flex-end
    }

    .h-flex-small.is-wide,
    .h-flex-tiny.is-wide {
        justify-content: space-between
    }

    .h-flex-small.is-wide.is-vertical-mobile,
    .h-flex-tiny.is-wide.is-vertical-mobile {
        justify-content: flex-start;
        align-items: center
    }

    .h-flex-medium.align-top,
    .h-flex-small.is-wide.is-vertical-mobile.align-top,
    .h-flex-tiny.is-wide.is-vertical-mobile.align-top {
        justify-content: flex-start;
        align-items: flex-start
    }

    .property-section-information h3 {
        font-size: 23px;
        width: 100%;
        color: #fff;
        margin: 10px 0 1em
    }

    .footer_left-wrapper,
    .send-buttom_wrap,
    .v-flex-0,
    .v-flex-huge,
    .v-flex-large,
    .v-flex-medium,
    .v-flex-xxhuge {
        flex-direction: column;
        display: flex
    }

    .image {
        width: 100%;
        display: block
    }

    .offset-margin-top {
        margin-top: 6.7em
    }

    .offset-margin-bottom {
        margin-bottom: 4em
    }

    .hero_background-image.is-tall,
    .hero_background-image.is-tall-offset,
    .image.is-tall {
        aspect-ratio: 1;
        height: 100%
    }

    .image.is-tall-offset {
        aspect-ratio: 1;
        height: 100%;
        min-height: 65vh
    }

    @media (min-width:1400px) {
        .image.is-long {
            min-height: 54vw;
            max-height: 54vw
        }
    }

    .image.is-long,
    .image.is-portrait {
        height: 100%;
        min-height: 600px;
        max-height: 600px
    }

    .image.is-tall-offset.show-top,
    .image.is-tall.show-top {
        object-position: 50% 0%
    }

    .image.is-map {
        aspect-ratio: auto;
        width: 85%;
        height: auto;
        min-height: 100%;
        display: none
    }

    .image.full-height.is-max-w-scheme {
        max-width: 70%
    }

    .image.landscape {
        aspect-ratio: 3/2;
        height: 100%
    }

    .image.widescreen {
        aspect-ratio: 16/9;
        height: 100%
    }

    .hero_background-image.landscape-desktop-different-mobile.parallax-image,
    .image.widescreen.parallax-image {
        margin-top: -10%
    }

    .section-bg {
        z-index: 1;
        width: 100%;
        height: 65%;
        position: absolute;
        inset: 0% 0% auto
    }

    .section-bg.is-bottom {
        inset: auto 0% 0%
    }

    .section-bg.is-bottom.is-small {
        z-index: -1;
        height: 25%
    }

    .grid-2-columns {
        display: grid;
        grid-column-gap: 2.5rem;
        grid-row-gap: 2.5rem;
        grid-template-columns: 1fr 1fr;
        grid-auto-columns: 1fr
    }

    .grid-2-columns.is-large {
        grid-column-gap: 4.625rem;
        grid-row-gap: 4.625rem
    }

    .grid-2-columns.is-large.is-bottom {
        align-items: end;
        margin-top: -15%
    }

    .grid-2-columns.is-large.is-bottom.is-first {
        place-items: start stretch;
        margin-top: 0
    }

    .grid-2-columns.is-large.is-second {
        place-items: center stretch;
        margin-top: -15%
    }

    .grid-1-3 {
        grid-template-columns: 1fr 3fr
    }

    .grid-1-3.is-tablet-1 {
        grid-column-gap: 1rem;
        grid-row-gap: 1rem;
        width: 100%;
        max-width: 100rem;
        margin-left: auto;
        margin-right: auto
    }

    .v-flex-0,
    .v-flex-large.is-0 {
        grid-column-gap: 0px;
        grid-row-gap: 0px
    }

    .btn_main_wrap {
        z-index: 99;
        flex-direction: column;
        justify-content: space-between;
        display: flex;
        position: relative
    }

    .btn_main_wrap.modal {
        margin-top: 1rem
    }

    .btn_main_inner {
        grid-column-gap: .5rem;
        grid-row-gap: .5rem;
        color: #fff;
        letter-spacing: .04em;
        border: 0 #fff;
        padding: .7rem 2rem;
        font-weight: 300;
        transition: border-radius .5s;
        display: flex
    }

    .btn_main_inner:hover,
    .image_wrapper.is-side-line {
        border-bottom-right-radius: 0
    }

    .btn_main_inner:hover {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0
    }

    .btn_main_inner.hover {
        color: #fff;
        border-color: #fff;
        width: 100%;
        display: none;
        position: absolute;
        inset: 0% auto auto 0%
    }

    .btn_main_inner.is_purple {
        background-color: #434871
    }

    .info_large-title {
        text-align: left;
        letter-spacing: -.03em;
        font-size: 11cqw;
        font-weight: 300;
        line-height: 1.15em
    }

    .icon-horizontal {
        justify-content: center;
        align-items: center;
        display: flex
    }

    .contact_component,
    .contact_form {
        display: grid;
        grid-auto-columns: 1fr
    }

    .v-flex-medium.smaller-tablet {
        grid-column-gap: 2.5rem;
        grid-row-gap: 2.5rem
    }

    .v-flex-medium.copy {
        grid-column-gap: 0rem;
        grid-row-gap: 0rem
    }

    .contact_component {
        grid-column-gap: 2rem;
        grid-row-gap: 4rem;
        letter-spacing: -.01em;
        grid-template-columns: 1fr 1fr;
        align-items: start
    }

    .header_heading,
    .text-line {
        line-height: 1;
        letter-spacing: 0
    }

    .contact_form-block {
        flex-direction: column;
        align-items: stretch;
        margin-bottom: 0
    }

    .contact_form {
        grid-column-gap: 1.5rem;
        grid-row-gap: 1.5rem;
        grid-template-rows: auto auto;
        grid-template-columns: 1fr
    }

    .lines-wrap {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 2rem;
        display: flex;
        position: absolute;
        inset: auto 0% -.825rem
    }

    .line.is-2 {
        height: .25rem
    }

    .line.is-3 {
        height: .375rem
    }

    .line.is-4 {
        height: .5rem
    }

    .line.is-5 {
        height: .625rem;
        margin-top: 0;
        margin-bottom: 0
    }

    .section_hero {
        height: 100svh;
        position: relative
    }

    .section_hero.background-color-secondary {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        min-height: 73.5rem;
        display: flex
    }

    .section_hero.is-hero-home {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        display: flex
    }

    .footer_logo {
        object-fit: fill;
        width: 16.375rem;
        height: auto
    }

    .footer_text.margin-top {
        margin-top: 2.25rem
    }

    .header_heading-wrapper.is-smaller {
        max-width: 110rem
    }

    .header_heading-wrapper.is-smaller.is_hero_text {
        overflow: hidden;
        padding: 5px
    }

    .header_heading-wrapper.is-70-width {
        width: 70vw;
        max-width: 110rem
    }

    .header_heading {
        font-size: 1.89em;
        margin: 0;
        font-weight: 300;
        color: #000;
        border-bottom: 1px solid #c1c1c1;
        padding-bottom: 17px
    }

    .header_heading.is-contact {
        font-size: 9cqw
    }

    .header_heading.max-width-107rem {
        max-width: 107rem
    }

    .header_heading.larger-version {
        font-size: 3em
    }

    .header_heading.is-home-intro {
        font-size: 3.96em;
    }

    .header_heading.ch-cor {
        max-width: 34ch
    }

    .header_heading-span {
        background-repeat: no-repeat;
        background-attachment: scroll;
        margin-right: 0;
        padding-right: 12.6cqw;
        position: relative
    }

    .hero_image,
    .hero_images_wrap {
        width: 100%;
        margin-left: auto;
        margin-right: auto
    }

    .h-flex-medium,
    .h-flex-small {
        align-items: center;
        display: flex
    }

    .h-flex-medium.is-title-animation {
        justify-content: space-between;
        align-items: center
    }

    .grid-3-1 {
        grid-template-rows: auto;
        grid-template-columns: 3fr 1fr
    }

    .hero_images_wrap {
        object-fit: cover;
        height: 100%;
        position: relative;
        overflow: hidden
    }

    .hero_image,
    .title_box {
        height: 100%;
        position: absolute;
        inset: 0%
    }

    .hero_image.is_image_2 {
        z-index: 2
    }

    .hero_image.is_image_3 {
        z-index: 3
    }

    .hero_image.is_image_1 {
        z-index: 1
    }

    .hero_image.is_image_4 {
        z-index: 4
    }

    .title_box {
        z-index: 5;
        mix-blend-mode: difference;
        flex-flow: column;
        justify-content: center;
        align-items: center;
        padding-top: 1vw;
        padding-bottom: 1vw;
        display: flex
    }

    .title_box-wrapper {
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        min-height: 24rem;
        display: flex;
        position: relative
    }

    .hero_content {
        justify-content: center;
        align-items: center;
        width: 33rem;
        height: 46rem;
        display: flex;
        position: relative
    }

    .slider {
        height: auto;
        max-height: 75rem;
        position: relative
    }

    .slide_item-content {
        align-items: flex-start;
        display: flex;
        position: relative
    }

    .slide_mage-wrap {
        width: 60%;
        overflow: hidden
    }

    .slide_image {
        aspect-ratio: 1;
        object-fit: cover;
        width: 100%;
        height: 100%;
        max-height: 80rem
    }

    .slide_item-info {
        grid-column-gap: 3rem;
        grid-row-gap: 3rem;
        flex-direction: column;
        justify-content: center;
        width: 45%;
        margin: 7rem 0 7rem -3.5rem;
        padding: 3.375rem 5vw;
        display: flex;
        position: sticky;
        top: 10rem
    }

    .right-arrow {
        width: 45%;
        max-height: 100%;
        display: block
    }

    .slide-nav {
        z-index: 0;
        grid-column-gap: .5rem;
        grid-row-gap: .5rem;
        justify-content: flex-end;
        align-items: center;
        width: 100%;
        padding-top: 7.5%;
        padding-right: 32.5%;
        display: flex;
        position: sticky;
        bottom: 45%;
        left: auto
    }

    .mask {
        padding-left: 3%;
        overflow: visible
    }

    .hero_animation-wrap {
        grid-row-gap: 0vw;
        flex-direction: column;
        width: 100%;
        height: 100%;
        margin: auto;
        display: flex;
        position: absolute
    }

    .image_wrapper {
        z-index: 10;
        width: 100%;
        position: relative;
        overflow: hidden
    }

    .image_wrapper.with-padding {
        grid-column-gap: .25rem;
        grid-row-gap: .25rem;
        border-radius: 0;
        flex-flow: column;
        justify-content: center;
        align-items: flex-end;
        display: flex;
        padding-top: 2em
    }

    .image_wrapper.with-offset {
        border-radius: 0;
        flex-flow: column;
        justify-content: center;
        align-items: flex-end;
        display: flex
    }

    .padding-section-xlarge {
        padding-top: 9rem;
        padding-bottom: 9rem
    }

    .padding-section-xlarge.is-tablet-half {
        padding-top: 5rem
    }

    .about_image-grid {
        grid-column-gap: 4.625rem;
        grid-row-gap: 4.625rem;
        flex-direction: column;
        grid-template-rows: auto auto;
        grid-template-columns: 1fr;
        grid-auto-columns: 1fr;
        display: grid
    }

    .quote_author {
        margin-top: 2rem;
        display: block
    }

    .block-qoute {
        padding: 0;
        font-weight: 400
    }

    .padding-disclaimer,
    .padding-section-xxlarge {
        padding-top: 15rem;
        padding-bottom: 15rem
    }

    .padding-section-hero.is-bottom-medium,
    .padding-section-xxlarge.is-bottom-medium {
        padding-bottom: 4rem
    }

    .padding-section-hero.is-top-small,
    .padding-section-xxlarge.is-top-small {
        padding-top: 3rem
    }

    .padding-section-hero.is-bottom-small,
    .padding-section-xxlarge.is-bottom-small {
        padding-bottom: 5rem
    }

    .send-buttom_wrap {
        z-index: 1;
        justify-content: space-between;
        align-items: flex-end;
        width: 100%;
        min-width: 9.375rem;
        position: relative
    }

    .project_tabs {
        z-index: 2;
        grid-column-gap: 2rem;
        grid-row-gap: 2rem;
        grid-template-rows: auto;
        grid-template-columns: 2fr 1fr;
        grid-auto-columns: 1fr;
        display: grid;
        position: relative
    }

    .project_tabs-menu {
        z-index: 1;
        border-left: 1px solid #000;
        flex-direction: column;
        align-items: flex-start;
        padding-left: 2rem;
        display: flex
    }

    .section-project {
        position: relative;
        color: #fff
    }

    .section-project h3.intro {
        color: #fff;
        margin: 20px 0 10px;
        text-transform: none;
        line-height: 1.26;
        letter-spacing: 1.3px;
        font-size: 21px;
        max-width: 90%
    }

    .property_content_block {
        padding: 3em 40px;
        text-align: center;
        line-height: 1.12
    }

    .project_offset_blocks {
        line-height: 1.2;
        padding: 0 15px 1em 0;
        text-align: center
    }

    .project_offset_blocks h2 {
        font-size: 2em;
        text-transform: capitalize;
        letter-spacing: .6px;
        line-height: 1.27
    }

    @media (min-width:992px) {
        .overview-content {
            height: 100%;
            margin-bottom: 1em
        }

        .container-large {
            padding: 3em 5% 4em
        }

        .global-container,
        .padding-global {
            padding-left: 6%;
            padding-right: 6%
        }

        .global-project {
            max-width: 95%;
            margin: 0 auto
        }

        .padding-left-offset {
            padding-left: 0;
            padding-right: 3%
        }

        .padding-section-project-offset-wide {
            width: 100%;
            margin: 0 auto;
            padding: 2em 0 5em
        }

        .padding-section-project-wide {
            max-width: 90%;
            margin: 0 auto
        }

        .property-section-information h3,
        .section-project h3.intro {
            max-width: 80%
        }

        .image.is-long {
            min-height: 800px;
            max-height: 800px
        }

        .project_offset_blocks {
            text-align: left;
            margin-right: 12%;
            padding: 0 35px
        }

        .project_offset_block,
        .property_content_block {
            text-align: left;
            max-width: 93%
        }
    }

    @media (min-width:1400) {
        .project_offset_blocks {
            margin-right: 18%
        }
    }

    .project_offset_column_block {
        padding: 0 40px;
        text-align: center;
        line-height: 1.2
    }

    .project_offset_block h2,
    .property_content_block h2 {
        font-size: 32px;
        margin-bottom: 20px;
        line-height: 1.2;
        margin-top: 20px
    }

    .grid-text-wrapper,
    .hero_home {
        width: 100%;
        max-width: 100%
    }

    .image-overlay {
        z-index: 1;
        width: 100%;
        display: block;
        position: absolute;
        inset: 0% 0% 0% auto
    }

    .hero_background-image {
        aspect-ratio: 16/9;
        width: 100%;
        height: auto;
        margin-top: -10%;
        display: block
    }

    .hero_background-image.normal {
        aspect-ratio: auto
    }

    .background-video {
        width: 100%;
        height: 100%;
        position: absolute;
        inset: 0%
    }

    .hero_home {
        justify-content: center;
        align-items: center;
        height: 100%;
        margin-left: auto;
        margin-right: auto;
        display: flex
    }

    .div-block-2 {
        flex-flow: column-reverse wrap-reverse;
        justify-content: flex-start;
        align-items: center;
        display: flex
    }

    .div-block-3 {
        flex: 0 auto;
        width: 100%
    }

    .padding-section-hero {
        padding-top: 15rem;
        padding-bottom: 7rem
    }

    .div-block-4 {
        position: absolute
    }

    .reckless-source {
        font-size: .8rem;
        font-weight: 400
    }

    .menu_background_wrapper {
        z-index: 0;
        flex-flow: column;
        justify-content: space-between;
        align-items: flex-end;
        display: flex;
        position: absolute;
        inset: 0%
    }

    .div-block-5 {
        border-radius: 100%;
        justify-content: center;
        align-items: center;
        width: 1.25rem;
        height: 1.25rem;
        display: flex
    }

    @media (max-width:991px) {

        .header_heading-span,
        .header_heading-span.is-2,
        .header_heading-span.is-3 {
            background-size: contain
        }

        .contact_component,
        .grid-1-3.is-tablet-1,
        .grid-2-columns.is-large,
        .grid-3-1.is-1-tablet {
            grid-template-columns: 1fr
        }

        h1 {
            font-size: 3.25rem
        }

        h2 {
            font-size: 2.75rem
        }

        h3 {
            font-size: 2.25rem
        }

        h4 {
            font-size: 1.75rem
        }

        .hide-tablet,
        .image-overlay {
            display: none
        }

        .max-width-large,
        .max-width-medium,
        .max-width-small,
        .max-width-xxlarge,
        .modal_max-width-content {
            max-width: 100%
        }

        .close_modal-icon,
        .hide-mobile-landscape {
            width: 2rem;
            height: 2rem
        }

        .max-width-full-tablet {
            width: 100%;
            max-width: none
        }

        .margin-large {
            margin: 2.5rem
        }

        .margin-xlarge {
            margin: 3.5rem
        }

        .margin-xxlarge {
            margin: 4.5rem
        }

        .margin-huge {
            margin: 5rem
        }

        .margin-xhuge {
            margin: 6rem
        }

        .margin-xxhuge {
            margin: 7.5rem
        }

        .margin-left,
        .margin-right,
        .margin-top {
            margin-bottom: 0
        }

        .margin-bottom,
        .margin-top,
        .margin-vertical {
            margin-left: 0;
            margin-right: 0
        }

        .padding-large {
            padding: 2.5rem
        }

        .padding-xlarge {
            padding: 3.5rem
        }

        .padding-xxlarge {
            padding: 4.5rem
        }

        .padding-huge {
            padding: 5rem
        }

        .padding-xhuge {
            padding: 6rem
        }

        .padding-xxhuge {
            padding: 7.5rem
        }

        .padding-bottom,
        .padding-left,
        .padding-top {
            padding-right: 0
        }

        .padding-horizontal,
        .padding-left,
        .padding-right,
        .slide-nav {
            padding-top: 0
        }

        .padding-horizontal,
        .padding-left,
        .padding-right,
        .padding-section-xxlarge.is-top-small.mobile-0,
        .padding-top {
            padding-bottom: 0
        }

        .margin-top.margin-xxhuge {
            margin-top: 4rem
        }

        .grid-2-columns.is-large.is-bottom,
        .grid-2-columns.is-large.is-second,
        .margin-bottom {
            margin-top: 0
        }

        .margin-left {
            margin-top: 0;
            margin-right: 0
        }

        .margin-right {
            margin-top: 0;
            margin-left: 0
        }

        .margin-horizontal {
            margin-top: 0;
            margin-bottom: 0
        }

        .padding-right,
        .padding-top {
            padding-left: 0
        }

        .padding-bottom {
            padding-top: 0;
            padding-left: 0
        }

        .padding-vertical {
            padding-left: 0;
            padding-right: 0
        }

        .padding-vertical.padding-xxlarge {
            padding-top: 3rem;
            padding-bottom: 0
        }

        .padding-vertical.padding-xxlarge.footer {
            padding-top: 5rem
        }

        .about_image-grid,
        .grid-2-columns.is-large {
            grid-column-gap: 3rem;
            grid-row-gap: 3rem
        }

        .grid-2-columns.is-large.is-bottom-space,
        .tab5_tabs-menu {
            margin-bottom: 2rem
        }

        .image-animation_text {
            font-size: 22vw
        }

        .info_large-title {
            font-size: 12cqw
        }

        .info_large-title.is-big.text-color-green.is-space {
            padding-left: 0;
            font-size: 18cqw
        }

        .info_large-title.is-big.text-color-green.is-space-small {
            font-size: 18cqw
        }

        .info_large-title.is-hero {
            font-size: 15cqw
        }

        .info_large-title.expanding,
        .info_large-title.horizons {
            margin-left: auto;
            margin-right: auto;
            font-size: 10.8vw;
            left: auto;
            right: auto
        }

        .info_large-title.text-color-green.location-page {
            font-size: 10cqw
        }

        .info_large-title.expanding {
            margin-top: -10vw
        }

        .info_large-title.horizons {
            margin-top: 10vw
        }

        .v-flex-small.grow {
            flex: 1
        }

        .section_contact.background-color-alternative {
            padding-top: 3rem
        }

        .section_hero.background-color-secondary,
        .section_hero.is-hero-home {
            min-height: auto
        }

        .header_heading-wrapper.is-smaller.is_hero_text {
            padding-top: 1.5rem
        }

        .header_heading {
            font-size: 2.12em;
            color: #fff;
            line-height: 1.2;
            letter-spacing: .3px
        }

        .header_heading-span {
            padding-right: 13cqw;
            line-height: 1.2
        }

        .grid-3-1.is-1-tablet {
            align-self: stretch
        }

        .hero-panel {
            width: 150vw
        }

        .thanks-panel_wrap {
            width: 200vw
        }

        .nav-text {
            font-size: var(--text-size--standart)
        }

        .nax-text-wrap {
            margin-left: 1rem;
            display: none
        }

        .hero_logo {
            width: 8rem;
            margin-right: -4.5rem
        }

        .slider {
            max-height: none
        }

        .slide_item-content {
            flex-direction: column;
            align-items: flex-end
        }

        .slide_mage-wrap {
            flex: none;
            width: 100%
        }

        .slide_item-info {
            flex: none;
            width: 65%;
            margin-top: -40%
        }

        .hero_background-image.is-map,
        .right-arrow,
        .slide-nav {
            width: 100%
        }

        .slide-nav {
            justify-content: center;
            padding-right: 0;
            position: absolute;
            top: auto;
            bottom: 5%
        }

        .pricing_wrapper.hide-desktop,
        .pricing_wrapper.hide-tablet,
        .section_faq1,
        .slide-nav.hide-desktop,
        .tab5_component.hide-desktop {
            display: block
        }

        .image_wrapper.is-contact {
            height: 45rem
        }

        .image_wrapper.is-contact.is-map {
            border-bottom-right-radius: 0;
            border-bottom-left-radius: 0;
            height: auto;
            min-height: 60vh
        }

        .image_wrapper.is-video,
        .title_chip {
            order: -1
        }

        .image_wrapper.scale_in_view.below_desktop_sizing {
            width: 85%
        }

        .padding-section-xlarge {
            padding-top: 4rem;
            padding-bottom: 4rem
        }

        .padding-section-xlarge.is-tablet-half {
            padding-top: 3rem;
            padding-bottom: 3rem
        }

        .contact_sidebar {
            border-top-left-radius: 0;
            flex: 0 auto;
            justify-content: flex-start;
            align-items: center;
            width: 100%;
            min-width: auto;
            margin-top: 0;
            margin-left: 0;
            position: relative
        }

        .padding-section-xxlarge {
            padding-top: 6rem;
            padding-bottom: 6rem
        }

        .padding-section-xxlarge.is-bottom-medium.mobile-top-cor {
            padding-top: 7rem
        }

        .padding-section-hero.is-bottom-large,
        .padding-section-hero.is-top-0,
        .padding-section-xxlarge.is-bottom-large,
        .padding-section-xxlarge.is-top-0 {
            padding-bottom: 4rem
        }

        .padding-section-hero.is-xx-large-mobile,
        .padding-section-xxlarge.is-xx-large-mobile {
            padding-bottom: 9rem
        }

        .padding-section-xxlarge.is-xx-large-mobile.mobile-top-cor.contact {
            padding-top: 9rem
        }

        .padding-section-hero.is-top-small,
        .padding-section-xxlarge.is-top-small {
            padding-top: 0;
            padding-bottom: 4rem
        }

        .send-buttom_wrap.is-modal {
            position: relative;
            right: 0
        }

        .v-flex-tiny {
            justify-content: flex-start;
            align-items: stretch
        }

        .faq1_accordion,
        .h-flex-stiny.map {
            flex-flow: column
        }

        .modal_content-wrapper {
            width: 90%;
            max-width: none;
            padding-left: 0;
            padding-right: 0
        }

        .modal_close-button {
            right: 0
        }

        .modal_logo {
            width: 2rem;
            height: 2rem;
            left: 0
        }

        .modal_title-text.text-color-light-yellow {
            font-size: 5cqw
        }

        .section_title {
            line-height: 1.1
        }

        .display-block-desktop {
            display: inline
        }

        .grid_text {
            font-size: var(--modal-title)
        }

        .title_chip.is-smaller-mobile {
            max-width: none
        }

        .logo {
            width: 9rem
        }

        .cta38_link-text,
        .table_header {
            font-size: 1.25rem
        }

        .hero_background-image,
        .hero_background-image.aspect-ratio-landscape,
        .hero_background-image.aspect-ratio-landscape.tablet-square,
        .hero_background-image.landscape-desktop-different-mobile {
            aspect-ratio: 1
        }

        .hero_background-image.landscape-desktop-different-mobile.parallax-image.position {
            object-position: 37% 50%
        }

        ._30rem {
            min-height: 15rem
        }

        .scheme_wrapper.is-title-animation {
            flex-direction: column;
            justify-content: space-between;
            align-items: flex-start;
            display: flex
        }

        .scheme_images {
            max-width: 60%
        }

        .padding-section-hero {
            padding-top: 6rem;
            padding-bottom: 4rem
        }

        .grid-text-wrapper {
            max-width: 100%;
            padding-top: 0
        }
    }

    @media (max-width:767px) {

        .contact_component,
        .floors_tab-wrapper,
        .grid-2-columns,
        .project_tabs {
            grid-template-columns: 1fr
        }

        .hide-mobile-landscape,
        .nax-text-wrap {
            display: none
        }

        .max-width-full-mobile-landscape {
            width: 100%;
            max-width: none
        }

        .margin-xsmall {
            margin: .75rem
        }

        .margin-small {
            margin: 1.25rem
        }

        .margin-medium {
            margin: 1.5rem
        }

        .margin-large {
            margin: 2rem
        }

        .margin-xlarge {
            margin: 2.5rem
        }

        .margin-xxlarge {
            margin: 3rem
        }

        .margin-huge {
            margin: 3.5rem
        }

        .margin-xhuge {
            margin: 4rem
        }

        .margin-xxhuge {
            margin: 5rem
        }

        .margin-bottom.margin-small.is-mobile-0,
        .margin-left,
        .margin-right,
        .margin-top {
            margin-bottom: 0
        }

        .padding-xsmall {
            padding: .75rem
        }

        .padding-small {
            padding: 1.25rem
        }

        .padding-medium {
            padding: 1.5rem
        }

        .padding-large {
            padding: 2rem
        }

        .padding-xlarge {
            padding: 2.5rem
        }

        .padding-xxlarge {
            padding: 3rem
        }

        .padding-huge {
            padding: 3.5rem
        }

        .padding-xhuge {
            padding: 4rem
        }

        .padding-xxhuge {
            padding: 5rem
        }

        .margin-top,
        .margin-vertical {
            margin-left: 0;
            margin-right: 0
        }

        .margin-top.margin-xxhuge {
            margin-top: 3rem
        }

        .margin-bottom {
            margin-top: 0;
            margin-left: 0;
            margin-right: 0
        }

        .margin-bottom.margin-huge.modal {
            margin-bottom: 1rem
        }

        .margin-left {
            margin-top: 0;
            margin-right: 0
        }

        .margin-right {
            margin-top: 0;
            margin-left: 0
        }

        .margin-horizontal {
            margin-top: 0;
            margin-bottom: 0
        }

        .padding-top {
            padding-bottom: 0;
            padding-left: 0;
            padding-right: 0
        }

        .padding-bottom {
            padding-top: 0;
            padding-left: 0;
            padding-right: 0
        }

        .padding-left {
            padding-top: 0;
            padding-bottom: 0;
            padding-right: 0
        }

        .padding-right {
            padding-top: 0;
            padding-bottom: 0;
            padding-left: 0
        }

        .padding-vertical {
            padding-left: 0;
            padding-right: 0
        }

        .padding-section-medium.is-bottom-0.is-top-small,
        .padding-vertical.padding-xxlarge.footer,
        .spacer-xxlarge {
            padding-top: 3rem
        }

        .padding-horizontal {
            padding-top: 0;
            padding-bottom: 0
        }

        .text-size-medium {
            font-size: 1rem
        }

        .heading-style-h6,
        .text-size-large,
        .text-style-quote {
            font-size: 1.125rem
        }

        .heading-style-h2 {
            font-size: 2.25rem
        }

        .heading-style-h5 {
            font-size: 1.25rem
        }

        .heading-style-h1 {
            font-size: 2.5rem
        }

        .button.is-link.is-icon,
        .text-size-small {
            font-size: var(--size)
        }

        .button.is-link.is-icon.is-slider {
            grid-column-gap: 1rem;
            grid-row-gap: 1rem;
            text-align: left
        }

        .heading-style-h4 {
            font-size: 1.5rem;
            line-height: 1.4
        }

        .text-size-regular {
            font-size: 3vw
        }

        .heading-style-h3 {
            font-size: 2rem
        }

        .text-style-nowrap {
            white-space: normal
        }

        .text-rich-text p {
            line-height: 1
        }

        .padding-section-small {
            padding-top: 2rem;
            padding-bottom: 2rem
        }

        .padding-section-small.large-bottom.mobile-cor {
            padding-bottom: 5rem
        }

        .padding-global {
            padding-left: 3%;
            padding-right: 3%
        }

        .padding-section-hero.is-bottom-medium,
        .padding-section-large,
        .padding-section-medium,
        .padding-section-medium.is-bottom-large,
        .padding-section-xlarge,
        .padding-section-xxlarge,
        .padding-section-xxlarge.is-bottom-medium {
            padding-top: 3rem;
            padding-bottom: 3rem
        }

        .spacer-xsmall {
            padding-top: .75rem
        }

        .spacer-small {
            padding-top: 1.25rem
        }

        .spacer-medium {
            padding-top: 1.5rem
        }

        .spacer-large {
            padding-top: 2rem
        }

        .spacer-xlarge {
            padding-top: 2.5rem
        }

        .spacer-huge {
            padding-top: 3.5rem
        }

        .padding-section-xxlarge.is-bottom-0,
        .padding-section-xxlarge.is-bottom-medium.mobile-top-cor,
        .padding-section-xxlarge.is-bottom-small.mobile-top-cor,
        .padding-section-xxlarge.is-xx-large-mobile.mobile-top-cor,
        .section_contact.background-color-alternative,
        .spacer-xhuge {
            padding-top: 4rem
        }

        .spacer-xxhuge {
            padding-top: 5rem
        }

        .v-flex-huge,
        .v-flex-large {
            grid-column-gap: var(--spacing--medium);
            grid-row-gap: var(--spacing--medium)
        }

        .grid-2-columns,
        .grid-2-columns.is-large,
        .grid-2-columns.is-large.is-bottom,
        .project_tabs {
            grid-column-gap: 2rem;
            grid-row-gap: 2rem
        }

        .image.full-height.is-max-w-scheme {
            max-width: 100%
        }

        .image.widescreen.parallax-image {
            margin-top: -15%
        }

        .grid-2-columns.is-large.is-bottom-space,
        .project_tabs-menu {
            margin-bottom: 2rem
        }

        .grid-2-columns.is-small,
        .v-flex-large.is-0 {
            grid-column-gap: 0rem;
            grid-row-gap: 0rem
        }

        .btn_main_inner:hover {
            border-top-left-radius: var(--border-radius--main-small);
            border-bottom-left-radius: var(--border-radius--main-small);
            border-bottom-right-radius: var(--border-radius--main-small)
        }

        .btn_main_text.is-small {
            font-size: .8rem
        }

        .info_large-title.expanding {
            margin-top: -12vw
        }

        .info_large-title.horizons {
            margin-top: 12vw
        }

        .icon-horizontal.is-slider {
            width: 4rem
        }

        .v-flex-medium.copy,
        .v-flex-medium.smaller-tablet {
            grid-column-gap: .5rem;
            grid-row-gap: .5rem
        }

        .section_hero.background-color-secondary,
        .section_hero.is-hero-home {
            min-height: auto
        }

        .footer_logo {
            width: 12rem
        }

        .footer_text.margin-top {
            margin-top: 0
        }

        .header_heading-wrapper.is-smaller.is_hero_text {
            padding-top: 0
        }

        .header_heading-wrapper.is-70-width {
            width: auto;
            max-width: none
        }

        .header_heading {
            font-size: 5.9cqw
        }

        .header_heading.larger-version,
        .header_heading.smaller-version {
            font-size: 1.7em
        }

        .header_heading-span {
            padding-right: 19.6cqw
        }

        .header_heading-span.is-2,
        .header_heading-span.is-3 {
            display: inline-block
        }

        .hero_images_wrap {
            margin-left: auto;
            margin-right: auto
        }

        .hero_content {
            width: 22.5rem;
            height: 30.6rem
        }

        .hero_logo {
            width: 6rem;
            height: auto;
            margin-bottom: 0;
            margin-right: 0
        }

        .slide_item-info {
            width: 80%;
            margin-top: -25%;
            padding-top: 2.5rem;
            padding-bottom: 2.5rem
        }

        .floor_tab-image,
        .right-arrow {
            width: 100%
        }

        .slide-nav {
            bottom: 7.5%
        }

        .image_wrapper.is-contact.is-map {
            height: auto;
            min-height: 50vh
        }

        .image_wrapper.corner-correction {
            border-top-left-radius: 3rem;
            border-bottom-right-radius: 3rem;
            border-bottom-left-radius: 3rem
        }

        .about_image-grid {
            grid-column-gap: 3rem;
            grid-row-gap: 3rem
        }

        .padding-section-hero.is-bottom-large,
        .padding-section-hero.is-top-0,
        .padding-section-xxlarge.is-bottom-large,
        .padding-section-xxlarge.is-top-0 {
            padding-bottom: 3rem
        }

        .send-buttom_wrap.is-modal {
            justify-content: space-between;
            align-items: flex-start;
            margin-top: 1rem
        }

        .modal-request_component {
            align-items: flex-start
        }

        .modal_content-wrapper {
            grid-column-gap: var(--spacing--large);
            grid-row-gap: var(--spacing--large);
            justify-content: center;
            width: 100%;
            height: 100vh;
            max-height: none;
            padding-left: 5%;
            padding-right: 5%
        }

        .modal_close-button {
            top: 1rem;
            right: 5vw
        }

        .modal_logo {
            top: 1rem
        }

        .modal_title-text {
            font-size: var(--text-size--pricing)
        }

        .modal_title-text.text-color-light-yellow {
            font-size: 6cqw
        }

        .project_tabs-menu.header103_tabs-menu.is-about {
            grid-column-gap: .5rem;
            grid-row-gap: .5rem;
            margin-bottom: 0;
            margin-left: 0;
            padding-left: 0
        }

        .floors_tabs-link {
            grid-column-gap: .5rem;
            grid-row-gap: .5rem;
            font-size: var(--size)
        }

        .floors_tab-wrapper {
            grid-column-gap: 2rem;
            grid-row-gap: 2rem;
            align-items: stretch
        }

        .floor_tab-image-wrap {
            align-self: stretch;
            width: 100%;
            position: relative;
            top: 1%;
            right: 0
        }

        .section_title,
        .section_title.text-color-green {
            font-size: var(--section-title_mobile)
        }

        .display-block,
        .display-block-desktop {
            display: inline
        }

        .tab_link {
            padding-left: .5rem;
            padding-right: .5rem
        }

        .display-block-mobile {
            display: block
        }

        .padding-section-hero {
            padding-top: 10rem;
            padding-bottom: 3rem
        }

        .faq1_icon-wrapper {
            width: 1.75rem
        }

        .h-flex-small.is-wide.is-vertical-mobile {
            flex-flow: column;
            justify-content: center;
            align-items: flex-start
        }
    }

    @media (max-width:479px) {

        .margin-bottom,
        .margin-top,
        .margin-vertical {
            margin-left: 0;
            margin-right: 0
        }

        .margin-bottom.margin-small.is-mobile-0,
        .margin-left,
        .margin-right,
        .margin-top {
            margin-bottom: 0
        }

        .padding-bottom,
        .padding-right,
        .padding-top {
            padding-left: 0
        }

        .padding-bottom,
        .padding-left,
        .padding-top {
            padding-right: 0
        }

        .padding-horizontal,
        .padding-left,
        .padding-right {
            padding-top: 0;
            padding-bottom: 0
        }


        .main-wrapper {
            overflow: clip
        }

        .margin-bottom,
        .margin-top.margin-medium.is-mobile-0 {
            margin-top: 0
        }

        .margin-top.margin-large.less-mobile,
        .margin-top.margin-large.small-mobile {
            margin-top: 1rem
        }

        .margin-bottom.margin-huge.modal {
            margin-bottom: 1rem
        }

        .margin-left {
            margin-top: 0;
            margin-right: 0
        }

        .margin-right {
            margin-top: 0;
            margin-left: 0
        }

        .margin-horizontal {
            margin-top: 0;
            margin-bottom: 0
        }

        .padding-top {
            padding-bottom: 0
        }

        .padding-bottom {
            padding-top: 0
        }

        .padding-vertical {
            padding-left: 0;
            padding-right: 0
        }

        .max-width-full-mobile-portrait {
            width: 100%;
            max-width: none
        }

        .icon-embed-small {
            width: 2.25rem;
            height: 2.25rem
        }

        .form_checkbox-label {
            font-size: .7rem
        }

        .form_checkbox-label.text-color-light-yellow,
        .form_checkbox-label.text-color-white.modal {
            font-size: .8rem
        }

        .button.is-alternate.is-modal {
            padding: .75rem 2rem;
            font-size: .9rem
        }

        .text-size-regular {
            font-size: 4vw
        }

        .hero_background-image.is-map,
        .image.is-map {
            min-height: 20rem
        }

        .image.landscape.full-correction,
        .image.widescreen.full-correction {
            aspect-ratio: 2/3;
            object-position: 30% 50%
        }

        .footer_menu-wrapper {
            grid-row-gap: 1rem;
            grid-template-columns: 1fr
        }

        .btn_main_inner {
            padding-top: .5rem;
            padding-bottom: .5rem
        }

        .info_large-title.is-hero {
            font-size: 15cqw
        }

        .info_large-title.expanding,
        .info_large-title.horizons {
            font-size: 14vw
        }

        .section_hero.background-color-secondary {
            min-height: auto
        }

        .footer_logo {
            width: 10rem
        }

        .header_heading-wrapper {
            grid-row-gap: .25rem;
            flex-direction: column;
            grid-template-rows: auto;
            grid-template-columns: 1fr;
            grid-auto-columns: 1fr;
            justify-content: flex-start;
            place-items: flex-start center;
            display: flex
        }

        .header_heading-wrapper.is_hero_text {
            justify-content: center;
            align-items: flex-start;
            color: #fff
        }

        .header_heading {
            font-size: 6.8cqw
        }

        .header_heading.is-contact {
            align-self: flex-start
        }

        .header_heading.smaller-version {
            font-size: 6.1cqw
        }

        .header_heading.larger-version {
            font-size: 6.3cqw
        }

        .header_heading-span {
            padding-right: 22.5cqw
        }

        .h-flex-medium,
        .scheme_wrapper {
            grid-column-gap: 2em;
            grid-row-gap: 2em;
            flex-direction: column;
            align-items: flex-start
        }

        .h-flex-medium.modal-flex {
            grid-column-gap: 1rem;
            grid-row-gap: 1rem
        }

        .hero_content {
            width: 15.84rem;
            height: 26.4rem
        }

        .hero_logo {
            width: 4rem;
            margin-bottom: .5rem;
            margin-right: -.5rem;
            bottom: 1rem
        }

        .slide_item-info {
            grid-column-gap: 2rem;
            grid-row-gap: 2rem;
            width: 100%;
            margin-top: -10%
        }

        .display-block-mobile,
        .right-arrow {
            display: block
        }

        .slide-nav {
            justify-content: flex-start;
            align-items: center;
            left: 5%
        }

        .image_wrapper.is-contact {
            height: 40rem
        }

        .image_wrapper.is-contact.is-map {
            height: auto
        }

        .contact_sidebar {
            flex: 0 auto
        }

        .send-buttom_wrap {
            justify-content: space-between;
            align-items: flex-start
        }

        .modal_content-wrapper {
            justify-content: center;
            padding-top: 0
        }

        .modal_title-text.text-color-light-yellow {
            font-size: 8cqw
        }

        .title_wrap.price_title {
            grid-column-gap: .3rem;
            grid-row-gap: .3rem
        }


        .z {
            grid-column-gap: .25rem;
            grid-row-gap: .25rem
        }

        .display-block,
        .display-block-desktop {
            display: inline
        }

        .table_row {
            padding-left: .1rem;
            padding-right: .1rem
        }


        .form_checkboxes {
            grid-column-gap: 1.25rem;
            grid-row-gap: 1.25rem
        }

        .h-flex-small.is-wide.is-vertical-mobile {
            flex-direction: column;
            align-items: flex-start
        }

        .h-flex-small.is-wide.is-vertical-mobile.align-top.modal {
            grid-column-gap: .5rem;
            grid-row-gap: .5rem
        }

        .map-wrapper {
            min-height: 73vh
        }

        .tab5_tab-link {
            letter-spacing: .04em;
            padding: .5rem
        }

        .circle-icon {
            width: .3rem;
            height: .3rem;
            margin-top: .3rem
        }

        .circle-icon.is-green {
            flex: none
        }

        .circle-icon.circle.is-smaller-mobile {
            width: .3rem;
            height: .3rem;
            margin-top: .25rem
        }
    }

    .singleproject-media-main {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        min-height: 700px;
        margin-top: 20px;
        object-fit: cover;
        background-color: #000;
        overflow: hidden
    }

    .singleproject-media-main img,
    .singleproject-media-main video {
        min-width: 100%;
        max-height: 100%;
        width: 100%;
        height: auto;
        object-fit: contain
    }

    @media (min-width:992px) {
        .singleproject-media-main {
            height: 950px
        }
    }

    @media (min-width:1500px) {
        .singleproject-media-main {
            height: 1300px
        }
    }

    .site-main {
        flex: 1 0 auto
    }

    .error404 .content-area .error-404 .page-header {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: 60vh;
        text-align: center;
        position: relative
    }

    .error404 .content-area .error-404 .page-header h1 {
        font-size: 40px
    }

    @media (min-width:1024px) {
        .error404 .content-area .error-404 .page-header h1 {
            font-size: 50px
        }
    }

    .error404 .content-area .error-404 .page-header .bg-img {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: -1;
        min-height: 80vh;
        object-fit: cover;
        object-position: top
    }

    .t-eyebrow-m,
    .t-eyebrow-s {
        font-style: normal;
        font-weight: 400;
        font-size: 19px;
        letter-spacing: 1.2px;
        line-height: 1.1;
        color: #000;
        text-transform: uppercase
    }

    .t-eyebrow-s {
        font-size: 10px
    }

    p.content_figures {
        justify-content: center;
        display: flex;
        letter-spacing: .6px;
        padding: 30px;
        font-size: 28px;
        line-height: 1.3;
        max-width: 80%;
        margin: 0 auto;
        color: #000
    }

    .facts-section {
        margin: 0 auto;
        padding: 0 30px
    }

    .grid-columns-col {
        display: grid;
        grid-template-columns: 1fr;
        margin: 0 auto;
        text-align: center;
        padding: 2em 0;
        grid-gap: 72px 0
    }

    .grid--x-container {
        margin: 8em 0
    }

    .column-fact h2 {
        font-size: 3.5rem;
        line-height: 1.23;
        color: #000
    }

    @media (min-width:1100px) {
        .column-fact h2 {
            font-size: 4.5rem
        }
    }

    @media (min-width:1300px) {
        .column-fact h2 {
            font-size: 5.2rem
        }
    }

    .column-fact p {
        letter-spacing: .4px;
        font-size: 27px
    }

    @media (min-width:992px) {
        .grid-columns-col {
            grid-template-columns: repeat(3, 1fr)
        }

        .column-fact p {
            text-transform: uppercase;
            font-size: 17px;
            letter-spacing: 1px
        }
    }

    .grid--content-columns {
        margin: 3em auto;
        width: 100%;
        max-width: 98%;
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 20px
    }

    @media (min-width:1200px) {
        .image.is-portrait {
            min-height: 60vw;
            max-height: 60vw
        }

        .services-menu-link {
            margin-right: 1.75%
        }

        .padding-section-project-offset-wide {
            width: 100%;
            max-width: 92%
        }

        .image.is-long {
            min-height: 43vw;
            max-height: 43vw
        }

        .content-project-slideshow {
            padding: 6em 4.5em
        }

        .grid--content-columns {
            max-width: 80%;
            grid-template-columns: repeat(3, 1fr);
            grid-gap: 20px
        }
    }

    p.small {
        text-transform: uppercase;
        font-size: 15px
    }
}



.content-project-slideshow {
    padding: 2em 30px
}

@media (min-width:767px) {
    .content-project-slideshow {
        padding: 3em
    }
}

.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.page-template-page-investment-strategy .feature-section {
    padding: 50px 50px 0;
}

.contact-container a.address {
    margin-bottom: 10px;
}

.contact-container a.underline {
    border-bottom: 1px solid #ddd;
    padding-bottom: 2px;
    display: inline-block;
    margin-bottom: 20px;
}


/* PROJECTS SWIPER 2025 */


.projects-swiper-wrapper .container {
    width: 100%;
    margin: 2em auto 3em;
    padding: 1em;
}


@media (min-width: 992px) {
    .projects-swiper-wrapper .container {
        max-width: 100%;
        padding: 3em 50px;
    }
}


.projects-swiper-wrapper .swiper-slide img {
    height: 510px;
    width: 100%;
    object-fit: cover;
}

@media (min-width: 992px) {
    .projects-swiper-wrapper .swiper-slide img {
        height: 760px;
    }
}

@media (min-width: 1100px) {
    .projects-swiper-wrapper .swiper-slide img {
        height: 850px;
    }
}


@media (min-width: 1400px) {
    .projects-swiper-wrapper .swiper-slide img {
        height: 1000px;
    }
}


.projects-swiper-wrapper .projects-swiper-slider {
    position: relative;
}




@media (min-width: 992px) {
    .projects-swiper-wrapper .projects-swiper-slider {
        height: 760px;
    }
}

@media (min-width: 1100px) {
    .projects-swiper-wrapper .projects-swiper-slider {
        height: 850px;
    }
}

@media (min-width: 1400px) {
    .projects-swiper-wrapper .projects-swiper-slider {
        height: 1000px;
    }
}





/* Arrows */
.projects-swiper-wrapper .swiper-button-prev,
.projects-swiper-wrapper .swiper-button-next {
    position: static;
    padding: 25px;
    background-color: #000;
    border-radius: 0;
    color: #fff;
    fill: #fff;
    font-size: 0;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.projects-swiper-wrapper .swiper-button-prev::after,
.projects-swiper-wrapper .swiper-button-next::after {
    font-size: 18px;
    color: #fff;
}

.projects-swiper-wrapper .projects-swiper-controls {
    position: absolute;
    bottom: 40px;
    right: 40px;
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 10;
}


.projects-swiper-wrapper .projects-swiper-pagination {
    position: absolute;
    top: 20px;
    left: 20px;
    background: #000;
    color: #fff;
    font-size: 14px;
    padding: 15px;
    line-height: 1;
    z-index: 10;
}



.news_post_single_padded img {
    padding: 0 30px;
}

@media (min-width: 992px) {
    .news_post_single_padded img {
        padding: 0 85px;
    }
}



body.single-newsinsights .wp-block-columns.is-layout-flex {
    display: grid;
    gap: 20px;
    width: 100%;
    max-width: none;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    align-items: stretch;
}



body.single-newsinsights .wp-block-columns.is-layout-flex img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}


@media (max-width: 991px) {
    body.single-newsinsights .wp-block-columns.is-layout-flex {
        grid-template-columns: repeat(auto-fit, minmax(600px, 1fr));
    }
}







.cursor {
    z-index: 1000;
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out,
        background-color 0.3s, width 0.3s, height 0.3s;
    width: 10px;
    height: 10px;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cursor.active {
    transform: translate(-50%, -50%) scale(1.5);
}

.cursor.hidden {
    opacity: 0;
}



.news_grid_span_2 {
    display: grid;
    grid-template-columns: 1fr;

}

@media (min-width: 992px) {
    .news_grid_span_2 {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 40px;
    }
}


.lightbox-trigger {
    display: none;
}



.news-grid-x2 img {
    width: 100%;
    object-fit: cover;
    height: 43vw;
    max-height: 700px;
}

p.caption {
    font-size: 11px;
    text-transform: uppercase;
    line-height: 1.1;
}


/* SINGLE NEWS BACKLINK*/

.back-link {
    margin: 3em auto;
    border-top: 1px solid #ddd;
    padding: 1em 30px;
    width: 100%;
}

@media (min-width: 992px) {
    .back-link {
        max-width: 88%;
    }
}

.single-backlink {
    font-size: 1rem;
    color: #000;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    position: relative;
}

.single-backlink-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 1px;
    background: #2c2c2c;
    transition: width .32s ease;
}

.single-backlink:hover::after,
.single-backlink:focus::after {
    width: 100%;
}

.single-backlink:hover .single-backlink-text::after,
.single-backlink:focus .single-backlink-text::after {
    width: 100%;
}

.single-backlink-icon {
    width: 22px;
    height: auto;
    flex: 0 0 auto;
}

.single-backlink-text {
    display: inline-block;
    vertical-align: middle;
}





/* SH BLOG SINGLE POST HEADER */

.single-hero-progress-bar {
    position: fixed;
    top: 0;
    left: 0;
    height: 15px;
    background: #2c2c2c;
    width: 0%;
    z-index: 9999;
}

.single-hero-container {
    background: #f0eeeb;
}

@media (min-width: 992px) {
    .single-hero-container {
        width: 100%;
        background-color: #f0eeeb;
        display: flex;
        margin-bottom: 4em;
    }
}

.single-hero-wrapper {
    width: 100%;
    display: grid;
    grid-template-columns: 2fr 1fr;
    align-items: stretch;
}

.single-hero-image-section {
    position: relative;

}

.single-hero-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.single-hero-text-section {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 60px 60px 90px 60px;
}

.single-hero-heading {
    font-size: clamp(2.35rem, 6vw, 2.3rem);
    line-height: 1.2531;
    margin-bottom: 30px;
    letter-spacing: -0.02em;
}

.single-hero-description,
.single-hero-publication,
.single-hero-reading-time {
    font-size: clamp(1rem, calc(0.4em + 0.8vw), 2rem);
    line-height: 1.6;
    color: #111;
    font-weight: 500;
    max-width: 500px;
    margin-bottom: 15px;
}

.single-hero-backlink {

    font-size: 1rem;
    color: #000;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    position: relative;
}

.single-hero-backlink-text {
    display: inline-block;
    vertical-align: middle;
    position: relative;
}

.single-hero-backlink-text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 1px;
    background: #2c2c2c;
    transition: width .32s ease;
}

.single-hero-backlink:hover .single-hero-backlink-text::after,
.single-hero-backlink:focus .single-hero-backlink-text::after {
    width: 100%;
}

.single-hero-backlink-icon {
    width: 22px;
    height: auto;
    flex: 0 0 auto;
}

.fade-in {
    opacity: 0;
    transform: translateY(30px);
    animation: fadeInUp 1s ease-out forwards;
}

.fade-in-delay {
    opacity: 0;
    transform: translateY(30px);
    animation: fadeInUp 1s ease-out .3s forwards;
}

@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width:1024px) {
    .single-hero-wrapper {
        grid-template-columns: 1.5fr 1fr;
    }

    .single-hero-text-section {
        padding: 40px;
    }
}

@media (max-width:768px) {
    .single-hero-container {
        min-height: auto;
    }

    .single-hero-wrapper {
        grid-template-columns: 1fr;
    }

    .single-hero-image-section {}

    .single-hero-text-section {
        justify-content: flex-start;
        padding: 40px 30px;
    }

    .single-hero-heading {
        margin-bottom: 25px;
    }

    .single-hero-description,
    .single-hero-publication,
    .single-hero-reading-time {
        font-size: 1rem;
        max-width: 100%;
    }
}

@media (max-width:480px) {
    .single-hero-image-section {
        height: 100%;
    }

    .single-hero-description,
    .single-hero-publication,
    .single-hero-reading-time {
        font-size: 1rem;
    }

    .single-hero-text-section {
        padding: 30px 20px;
    }
}






/* NEWS and INSIGHTS GRID PAGE GRID */
/* NEWS and INSIGHTS GRID PAGE GRID */


.insights--container {
    width: 100%;
    margin: 0 auto 7em;
    padding: 0 20px;
}

@media (min-width: 992px) {
    .insights--container {
        max-width: 90%;
    }
}

@media (min-width: 1200px) {
    .insights--container {
        max-width: 92%;

    }
}

.post-grid-insight-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 5px;
}

.post-grid-insight-item {
    position: relative;
    aspect-ratio: 1;
    overflow: hidden;
    cursor: pointer;
}

.post-grid-insight-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.post-grid-insight-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: #000;
    color: #fff;
    padding: 30px 20px;
    transition: all 500ms ease-in-out;
}

.post-grid-insight-item:hover .post-grid-insight-overlay {
    background: #000;
    color: #fff;
    transition: all 500ms ease-in-out;
}

.post-grid-insight-item:hover img {
    transform: scale(1.05);
}

.post-grid-insight-category {
    font-size: 10px;
    text-transform: uppercase;
    color: #fff;
    letter-spacing: 2px;
    margin-bottom: 8px;
    transition: color 0.3s ease;
}

.post-grid-insight-item:hover .post-grid-insight-category {
    color: #fff;
    letter-spacing: 2px;
}

.post-grid-insight-name {
    font-size: 25px;
    font-weight: 400;
    max-width: 90%;
}

@media (max-width: 768px) {
    .post-grid-insight-header {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .post-grid-insight-description {
        font-size: 24px;
    }

    .post-grid-insight-grid {
        grid-template-columns: 1fr;
    }


}

@media (max-width: 480px) {
    .post-grid-insight-description {
        font-size: 20px;
    }

    .post-grid-insight-overlay {
        padding: 30px 15px;
    }

    .post-grid-insight-name {
        font-size: 16px;
    }
}


/* projects grid css movement when filtering */
/* Container remains stable so page doesn't jump */
#insights-grid { 
    display: grid;
    min-height: 600px; 
    transition: all 0.5s ease;
}

/* Individual Post Items */
.post-grid-insight-item { 
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    will-change: transform, opacity;
}


.post-grid-insight-item.is-visible {
    opacity: 1;
    transform: translateY(0);
}


/* ==== PROJECTS 26 ===== */

/* --- Grid & Layout --- */
.project-card-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
}

@media (min-width: 992px) {
    .project-card-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 1200px) {
    .project-card-grid { grid-template-columns: repeat(4, 1fr); }
}

/* --- Image Height Constraints --- */
.project-card-item__image-container {
    width: 100%;
    overflow: hidden;
}

.project-card-item__image-container img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
}

@media (min-width: 992px) {
    .project-card-item__image-container img {
        height: 400px;
    }
}

/* --- Smooth Filter Animations (Cards) --- */
.project-card-item {
    transition: opacity 0.4s ease, transform 0.4s ease;
    opacity: 1;
    transform: scale(1);
    text-decoration: none;
    color: inherit;
}

.project-card-item--hidden {
    display: none !important;
}

.project-card-item--fading {
    opacity: 0;
    transform: scale(0.97);
}

/* --- Smooth Filter Dropdown Animation --- */
.project-card-filter {
    position: relative;
    width: 100%;
    max-width: 350px;
    margin-bottom: 50px;
    cursor: pointer;
    user-select: none;
    z-index: 1000;
}

.project-card-filter__display {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border: 1px solid #000;
    background: #fff;

    font-weight: 600;
	text-transform: uppercase;
}
.project-card-filter__display #activeFilterLabel {
	width: 100%;
	font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-family: var(--font-helvetica-neue);
}
.project-card-filter__icon {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    width: 50px;
}

.project-card-filter.is-open .project-card-filter__icon {
    transform: rotate(180deg);
}

.project-card-filter__list {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-top: none;
    list-style: none;
    padding: 0 ;
    margin: 0 ;
    overflow: hidden;
    
    /* Animation Properties */
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
                opacity 0.3s ease, 
                visibility 0.4s;
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}

.project-card-filter.is-open .project-card-filter__list {
    max-height: 500px; 
    opacity: 1;
    visibility: visible;
}

.project-card-filter__item {
    padding: 1.5em 20px;
    transition: background 0.2s ease;
    font-family: var(--font-helvetica-neue);
    border-bottom: 1px solid #ddd;
}

.project-card-filter__item:hover {
    background: #ddd;
}

.project-card-filter__count {
    font-size: 0.85em;
    opacity: 0.5;
    margin-left: 8px;
}
