*,
:after,
:before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

ol[class],
ul[class] {
    list-style: none;
    padding: 0
}

blockquote,
body,
dd,
dl,
figcaption,
figure,
h1,
h2,
h3,
h4,
li,
ol[class],
p,
ul[class] {
    margin: 0;
    font-weight: 300;
    line-height: 1.2;
}

body {
    color: #fff;
    background: #000;
    font-family: "Avenir", arial, Helvetica, Arial, sans-serif;
    font-size: 17px;
    zoom: 98%;
    font-weight: 300;
    line-height: 1.4;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeSpeed
}

@media (min-width:768px) {
    body {
        font-size: 16px
    }
}

a:not([class]) {
    -webkit-text-decoration-skip: ink;
    text-decoration-skip-ink: auto
}

img {
    display: block
}

article>*+* {
    margin-top: 1em
}

button,
input,
select,
textarea {
    font: inherit
}

@media (prefers-reduced-motion:reduce) {
    * {
        -webkit-animation-duration: .01ms !important;
        animation-duration: .01ms !important;
        -webkit-animation-iteration-count: 1 !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        -webkit-transition-duration: .01ms !important;
        transition-duration: .01ms !important
    }
}

.grid--full {
    width: 100%
}

.grid--third {
    padding: 30px
}

.grid--fourth {
    border-bottom: 1px solid #eee;
    padding: 30px;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

.grid--fourth:last-child {
    border-bottom: none
}

.grid--half,
.grid--two-third {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    padding: 30px
}

.grid--mobile-first {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1
}

@media only (min-width:768px) {
    .grid--third {
        padding: 30px
    }
    .grid--fourth {
        padding: 60px
    }
    .grid--half,
    .grid--two-third {
        padding: 30px
    }
    .grid--half {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%
    }
}

@media only (min-width:1024px) {
    .grid--third {
        -ms-flex-order: initial;
        flex-basis: 33.3333333333%;
        max-width: 33.3333333333%
    }
    .grid--fourth,
    .grid--third {
        -webkit-box-ordinal-group: initial;
        border-left: 0;
        order: 0;
        padding: 30px
    }
    .grid--fourth {
        -ms-flex-order: initial;
        -ms-flex-preferred-size: 25%;
        border-bottom: none;
        flex-basis: 25%;
        max-width: 25%
    }
    .grid--two-third {
        -webkit-box-ordinal-group: initial;
        -ms-flex-order: initial;
        order: 0;
        -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
        max-width: 66.6666666667%;
        padding: 30px
    }
    .grid--half {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
        padding: 30px
    }
    .grid--lead {
        -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
        border-left: 0;
        order: -1
    }
    .grid--last {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        border-right: 0;
        order: 1
    }
}

.column--half,
.column--third,
.column--two-third {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%
}

.column--half {
    max-width: 100%
}

@media only (min-width:1024px) {
    .column--third {
        display: flex;
        flex-flow: column;
        flex-basis: 33.3333333333%;
        max-width: 33.3333333333%
    }
    .column--two-third {
        -ms-flex-preferred-size: 66.6666666667%;
        flex-basis: 66.6666666667%;
        max-width: 66.6666666667%
    }
    .column--half {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%
    }
}

.col-1-4 {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 0 30px
}

@media (min-width:1024px) {
    .col-1-4 {
        grid-template-columns: 1fr 1fr
    }
}

@media (min-width:1200px) {
    .col-1-4 {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (min-width:1440px) {
    .col-1-4 {
        grid-template-columns: repeat(4, 1fr)
    }
}

.col-2 {
    display: grid;
    grid-template-columns: 1fr
}

@media (min-width:1024px) {
    .col-2 {
        grid-template-columns: 1fr 1fr;
        grid-gap: 0 100px
    }
}



a:focus-visible {
    outline: 2px dashed #fff;
    outline-offset: 2px;
}





/* ADA focus styles */
.skip-link {
   position: absolute;
   top: -40px;
   left: 0;
   background: #000;
   color: #fff;
   padding: 8px;
   z-index: 10000;
}
.skip-link:focus {
   top: 0;
}
:focus-visible {
   outline: 3px solid #c60000;
   outline-offset: 2px;
}

/* Homepage Blaze JS content-blaze.php template part */

.slideshow-section { width: 100%; }
.blaze-slider { position: relative; }
.blaze-slider .slide { position: relative; color: #fff; overflow: hidden; }

.blaze-slider .slide img,
.blaze-slider .slide video {
  width: 100%;
  height: 800px;
  object-position: 50% 30%;
  object-fit: cover;
  display: block;
}

@media (min-width: 992px) {
  .blaze-slider .slide img,
  .blaze-slider .slide video { height: 900px; }
  .slide-content { padding: 30px; }
}
@media (min-width: 1200px) {
  .blaze-slider .slide img,
  .blaze-slider .slide video { height: 80vh; }
}

.blaze-slider .slide video { position: absolute; top: 0; left: 0; }

.slide-content {
  position: absolute;
  inset: auto 0 0 0;
  bottom: 6em;
  padding: 30px;
  background: none;
  z-index: 2;
}

.blaze-slider .slide::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 30%;
  background: linear-gradient(to top, rgba(0,0,0,.85) 0%, rgba(0,0,0,0) 76%);
  z-index: 1;
  pointer-events: none;
}

.slide-content h2 {
  font-size: 40px;
  font-weight: 300;
  letter-spacing: .5px;
  line-height: 1.2;
  font-family: "SFProSemiBold", arial, sans-serif;
  margin-bottom: 12px;
  max-width: 800px;
}

.slide-content p {
  font-size: 22px;
  line-height: 1.6;
  max-width: 600px;
  opacity: 1;
}

@media (min-width: 992px) {
  .slide-content { left: 4.5%; bottom: 7em; }
  .slide-content h2 { font-size: 47px; }
  .slide-content p { font-size: 23px; }
}

.slideshow-controls {
  position: absolute;
  right: 40px;
  bottom: 50px;
  z-index: 2;
  display: flex;
  gap: 2px;
}

.slideshow-controls .blaze-prev,
.slideshow-controls .blaze-next {
  background: #000;
  border: 0;
  padding: 15px;
  cursor: pointer;
  transition: background-color .2s ease;
  display: grid;
  place-items: center;
}

.slideshow-controls .blaze-prev:hover,
.slideshow-controls .blaze-next:hover { background: #333; }

@media (max-width: 992px) {
  .slideshow-controls { right: 20px; bottom: 20px; }
  .slideshow-controls .blaze-prev,
  .slideshow-controls .blaze-next { padding: 10px; }
}

/* Buttons */
.c-buttons { display: flex; margin-top: 30px; gap: 25px; }
.slide-btn.btn-arrow {
  position: relative; display: flex; justify-content: center; align-items: center;
}
.slide-btn {
  background: #b90000;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  height: 60px;
  border-radius: 3px;
  text-decoration: none;
  padding: 0 15px;
  width: 225px;
  letter-spacing: 3px;
  font-size: 11px;
  font-weight: 300;
  font-family: 'Schibsted Grotesk', sans-serif;
  text-align: center;
  text-transform: uppercase;
  border: 1px solid #b90000;
  transition: all 0.3s ease;
}
.slide-btn:hover { background: #d10000; border-color: #d10000; }

@media (min-width: 892px) { .slide-btn { width: 275px; } }

.slide-btn.btn-arrow::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  background: no-repeat center / contain
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36.1 25.8'><g><line fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-miterlimit='10' x1='0' y1='12.9' x2='34' y2='12.9'/><polyline fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-miterlimit='10' points='22.2,1.1 34,12.9 22.2,24.7'/></g></svg>");
  opacity: 1; 
  transform: translateX(0);
  transition: all 0.3s ease;
}
.slide-btn.btn-arrow:hover::after { transform: translateX(5px); }





:root {
    --font-heading: "SF Pro Display", sans-serif;
    --heading: "SF Pro Display", sans-serif;
    --font-body: "SFProDisplay", arial, "HelveticaNeueLT", sans-serif;
    --color-dark-bg: #fff;
    --color-section-bg-mid: #2b2c30;
    --color-white: #fff;
    --color-red: #8b0000;
    --color-red-primary: #8e0000;
    --color-red-secondary: #8e0000;
    --color-red-hover: #c60000;
    --color-light: #fff;
    --color-text-dark: #fff;
    --color-text-light: #fff;
    --color-black: #000;
    --color-text-white: #fff;
    --color-dark-bg: #111;
    --color-bg: #000;
    --color-footer-light-bg: #f9fafb;
    --container-width: 95%;
    --header-height: 110px;
    --color-darkgray: #121212;
	--color-off-gray: #171216;

}


body.no-scroll {
    overflow: hidden;

}

.container-main {
    max-width: var(--container-width);
    margin: 0 auto;
    padding: 0;
}

.header {
    background: #000;
    border-bottom: 1px solid #1a1a1a;
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: transform 0.35s ease;
    will-change: transform;
    width: 100%;
}
.header.is-hidden {
    transform: translateY(calc(-1 * var(--header-height)));
}
.header.is-visible {
    transform: translateY(0);
}
.header-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: var(--header-height);
}

.header-logo {
    font-family: var(--font-heading);
    font-weight: 700;
    font-size: 30px;
    color: var(--color-white);
    text-decoration: none;
    z-index: 1002;
    position: relative;
    width: 195px;
}

.header-logo img {
    width: 195px;
}

.header-nav-container {
    display: flex;
    align-items: center;
    gap: 1px;
    flex-grow: 1;
    justify-content: space-between;
}

.main-nav-list,
.secondary-nav-list {
    display: flex;
    align-items: center;
    list-style: none;
    text-align: center;
}

.main-nav {
    display: flex;
    flex-grow: 1;
    justify-content: center;
}

.main-nav-list {
    display: flex;
    align-items: center;
    flex-grow: 1;
    justify-content: center;
    gap: 25px;
}

@media (min-width: 1100px) {
	.main-nav-list {
		gap: 42px;
	}
}

.secondary-nav-list {
    gap: 24px;
}
.secondary-nav-list img {
	width: 100px;
}

@media (min-width: 1100px) {
	.secondary-nav-list img {
	width: 150px;
}
}

.button-inset {
    border: 1px solid var(--color-red-primary);
    display: flex;
    justify-content: center;
    height: 60px;
    gap: 15px;
    align-content: center;
    background: var(--color-red-primary);
    align-items: center;
    width: 100%;
    color: #fff;
}
.button-inset a {
    color: var(--color-red-primary);
    background: transparent;
    border: 1px solid var(--color-red-primary);
}

.button-fill {
    border: 1px solid #fff;
    display: flex;
    background: #fff;
    justify-content: center;
    height: 60px;
    align-content: center;
    align-items: center;
    width: 100%;
    color: #000;
}

@media (min-width: 1100px) {
	.button-fill {
	    width: 100%;
	    min-width: 155px;
	}
	
	.button-inset {
		width: clamp(195px, 20vw, 175px);
	}
}

.plus-icon {
	padding: 0 3px;
}

.button-fill a {
    color: var(--color-text-beige);
}
.main-nav-item {
	height: 100px;
    display: flex;
    justify-content: center;
}

.main-nav-link {
    display: flex;
    font-family: arial, sans-serif;
    align-items: center;
    text-decoration: none;
    color: #fff;
    font-weight: 400;
    letter-spacing: 3px;
    font-size: 14px;
    text-transform: uppercase;
    position: relative;
    transition: color 0.5s ease-in-out;
}

/* underline effect */
.main-nav-link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0x;
    width: 0%;
    height: 0px;
     background-color: #fff;
    transition: width 0.4s ease-in-out;
}

.main-nav-link:hover {
    color: #fff;
}

.main-nav-link:hover::after {
    width: 100%;
}

.main-nav-link svg {
    transition: transform 0.3s ease;
}
.main-nav-item:hover > .main-nav-link svg {
    transform: rotate(180deg);
    color: var(--color-white);
}

@media (min-width: 1100px) {
    .main-nav-link {
        font-size: 12px;
    }
}

@media (min-width: 1300px) {
    .main-nav-link {
        font-size: 14px;
    }
}



.secondary-nav-link {
    text-decoration: none;
    border-radius: 3px;
    font-weight: 300;
    letter-spacing: 3px;
    font-size: 12px;
    text-transform: uppercase;
    transition: all 500ms ease-in-out;
}
.secondary-nav-link:hover {
    color: var(--color-white);
    border: 1px solid var(--color-white);
    background: transparent;
    transition: all 500ms ease-in-out;
}
.secondary-nav-link-wide {
    text-decoration: none;
    border-radius: 3px;
    font-weight: 300;
    letter-spacing: 3px;
    font-size: 12px;
    text-transform: uppercase;
    transition: all 500ms ease-in-out;
    min-width: 190px;
}

@media (min-width: 1224px) {
.secondary-nav-link-wide {
    min-width: 220px;
	}

}
@media (min-width: 1424px) {
.secondary-nav-link-wide {
    min-width: 240px;
	}

}

.secondary-nav-link-wide:hover {
    color: var(--color-white);
    border: 1px solid var(--color-white);
    background: transparent;
    transition: all 500ms ease-in-out;
}



.secondary-nav-list li a.cslb {
    color: #fff;
    letter-spacing: 1px;
    font-size: 14px;
    border: 1px solid #ffffff9c;
    border-radius: 2px;
    padding: 16px 21px;
    font-weight: 800;
}
.mega-menu {
    position: absolute;
    top: var(--header-height);
    left: 0;
    width: 100%;
    background-color: #fff;
    border-top: 1px solid #eaecf0;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: opacity 0.3s ease, visibility 0s linear 0.3s, transform 0.3s ease;
    z-index: 998;
}
.main-nav-item:hover .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.3s ease, visibility 0s linear 0s, transform 0.3s ease;
}

/* .mega-menu-content {
        display: flex;
        gap: 48px;
        flex-wrap: wrap;
        padding: 40px 20px;
        max-width: var(--container-width);
        margin: 0 auto;
    }
    */

.mega-menu-content {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-gap: 20px;
    padding: 40px 20px;
    max-width: var(--container-width);
    margin: 0 auto;
}

.mega-menu-content a {
    text-decoration: none;
	cursor: pointer;
}

.mega-menu-section {
    flex: 1;
    flex: 1 1 calc(20% - 24px);
}
.mega-menu-section img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    border-radius: 0;
    margin-bottom: 16px;
}
.mega-menu-section h3 {
    font-family: var(--heading);
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #000;
    margin-bottom: 12px;
    transition: all 500ms ease-in-out;
}


.mega-menu-section h3:hover {
	color: var(--color-red);
	transition: all 500ms ease-in-out;
}
.mega-menu-section ul {
    list-style: none;
}
.mega-menu-section li a {
    display: block;
    padding: 8px 0;
    pointer: unset;
    text-decoration: none;
	color: #fff;
    font-size: 16px;
     cursor: pointer;
}
.mega-menu-section li a:hover {
    color: var(--color-white);
}

.hamburger-btn {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 5px;
    gap: 6px;
    z-index: 1001;
}
.hamburger-line {
    width: 24px;
    height:2px;
    background-color: var(--color-text-light);
    transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.3s ease;
    transform-origin: center;
}
.hamburger-btn.is-open .hamburger-line-1 {
    transform: translateY(4px) rotate(45deg);
}
.hamburger-btn.is-open .hamburger-line-2 {
    transform: translateY(-4px) rotate(-45deg);
}

.mobile-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: var(--color-black);
    transform: translateX(-100%);
    transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1);
    z-index: 999;
    padding-top: var(--header-height);
    overflow: hidden;
}
.mobile-menu.is-open {
    transform: translateX(0);
}
.mobile-menu__panels-container {
    display: flex;
    height: 100%;
    width: 200%;
    transform: translateX(0);
    transition: transform 0.4s cubic-bezier(0.23, 1, 0.32, 1);
}
.mobile-menu__panels-container.is-submenu-active {
    transform: translateX(-50%);
}
.mobile-menu__panel {
    width: 50%;
    height: 100%;
    overflow-y: auto;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 10px 25px 25px;
}
.mobile-menu__panel-header {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 16px;
    justify-content: space-between;
    color: #fff;
    border-top: 1px solid #ffffff30;
    padding-top: 15px;
    color: #fff;
}
.mobile-menu__back-btn {
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    padding: 0;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #ffffff;
    text-transform: uppercase;
}
.mobile-menu__panel-title {
    font-size: 12px;
    font-weight: 300;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.mobile-nav-list {
    list-style: none;
}

.mobile-nav-list li {
    border-bottom: 1px solid #ffffff2e;
}
.mobile-nav-list li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: var(--color-white);
    font-size: 16px;
    letter-spacing: 3px;
    font-weight:500;
    font-family: "Gotham Light", arial, sans-serif;
    padding: 30px 5px;
    text-transform: uppercase;
    transition: all 500ms ease-in-out;
}
.mobile-nav-list li a:hover {
    color: var(--color-red-primary);
    transition: all 500ms ease-in-out;
}
.mobile-nav-list .plus-icon {
    stroke: var(--color-white);
}

.mobile-submenu-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.mobile-submenu-item {
    text-decoration: none;
    color: var(--color-light);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    overflow: hidden;
    position: relative;
    border-radius: 0;
    margin-bottom: 12px;
}
.mobile-submenu-item:hover {
    color: var(--color-light);
    overflow: hidden;
}

.mobile-submenu-item img {
    width: 100%;
    height: auto;
    aspect-ratio: 2.5 / 1.125;
    object-fit: cover;
    border-radius: 0;
    transition: all 600ms ease-in-out;
    display: block;
}

.mobile-submenu-item:hover img {
    transform: scale(1.001);
    transition: all 602ms ease-in-out;
    opacity: 0.5;
}

.mobile-submenu-item h3 {
    font-size: 16px;
    font-weight: 500;
    padding: 5px 10px;
    margin-top: 8px;
    color: #fff;
    display: block;
}

@media (max-width: 1024px) {
    .header-nav-container {
        display: none;
    }
    .hamburger-btn {
        display: flex;
    }
    .page-title {
        font-size: 56px;
    }
    .service-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 48px;
    }

    .featured-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .content-section {
        padding: 64px 0;
    }
    .page-title-section {
        padding: 48px 0;
    }
    .page-title {
        font-size: 40px;
    }
    .section-header h2,
    .featured-section-header h2 {
        font-size: 36px;
    }
}

.c-button {
    display: flex;
    gap: 20px;
    margin-top: 30px;
}

.c-button a {
    background: #fff;
    text-decoration: none;
    color: var(--color-text-dark);
    height: 58px;
    align-content: center;
    align-items: center;
    display: flex;
    justify-content: center;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 4px;
    width: 225px;
}

.services-container h3 {
    font-size: 20px;
    color: #000;
}

.scroll-fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 2.15s ease, transform 2.15s ease;
}

.scroll-fade-in.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.scroll-fade-in:nth-child(2) {
    transition-delay: 0.4s;
}
.scroll-fade-in:nth-child(3) {
    transition-delay: 0.6s;
}
.scroll-fade-in:nth-child(4) {
    transition-delay: 0.8s;
}
.scroll-fade-in:nth-child(5) {
    transition-delay: 0.9s;
}

.mobile-btn-container {
    display: flex;
    flex-direction: row;
    list-style: none;
    gap: 20px;
    justify-content: center;
    margin: 2em auto;
    padding: 2em 2%;
}
.mobile-btn-container li {
	width: 100%;
	padding: 5px;
}


.mobile-footer-container {
	border-top: 1px solid #ffffff40;
	padding-top: 30px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	list-style: none;
    display: flex;
    justify-content: center;
    color: #fff;
    gap: 30px;
    align-items: center;
}
.mobile-footer-container a {
	color: #fff;
	font-size: 15px;
}


.mobile-footer-container ul {
	list-style: none;
	display: flex;
	justify-content: center;
	gap: 20px;
	margin: 0 auto;
	
}


.mobile-footer-container img {
	width: 155px;
}

.mobile-copyright {
	border-bottom: 1px solid #ffffff36;
    border-top: 1px solid #ffffff36;
    padding: 15px 0;
}
.mobile-copyright>ul {
    display: flex;
    justify-content: center;
    gap: 29px;
    align-items: center;
    text-align: center;
    list-style: none;
    font-size: 11px;
    letter-spacing: 2px;
}

.mobile-copyright a {
	text-decoration: none;
	color: #fff;
}



.container {
    margin: 0 auto;
    width: 95%;
    
}

@media (min-width:1024px) {
    .container {
        width: 75%;
    }
}



.container-md {
    margin: 0 auto;
    width: 95%;
    padding: 0 20px;
}

@media (min-width:1024px) {
    .container-md {
        width: 86%;
    }
}



.container-sm {
    margin: 6em auto;
    width: 95%
    padding: 0 20px;
}

@media (min-width:1024px) {
    .container-sm {
        width: 80%
    }
}



@import url('https://fonts.cdnfonts.com/css/sf-pro-display');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');


body,
button,
input,
select,
textarea {
    color: #fff;
    font-family: "Avenir", arial, "HelveticaNeueLT", sans-serif;
    font-size: 18px;
    line-height: 1.4
}

@font-face {
    font-display: swap;
    font-family: "Avenir";
    font-style: normal;
    font-weight: 500;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Avenir-Roman.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Avenir-Roman.woff") format("woff");
}
@font-face {
    font-display: swap;
    font-family: "NeueHaasGroteskRoman";
    font-style: normal;
    font-weight: 500;
    src: url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Roman.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Roman.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "NeueHaasGroteskMedium";
    font-style: normal;
    font-weight: 400;
    src: url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Medium.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Medium.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "NeueHaasGroteskThin";
    font-style: normal;
    font-weight: 100;
    src: url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Thin.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Thin.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "NeueHaasGroteskBold";
    font-style: normal;
    font-weight: 700;
    src: url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Bold.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Bold.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "NeueHaasGroteskLight";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Light.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/NeueHaasDisplay-Light.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "HelveticaNeueMedium";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/HelveticaNeue-Medium.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/HelveticaNeue-Medium.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "HelveticaNeueLT";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/HelveticaNeueLT.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/HelveticaNeueLT.woff") format("woff");
}
@font-face {
    font-display: swap;
    font-family: "SFProDisplay";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Regular.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Regular.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "SFProRegular";
    font-style: normal;
    font-weight: 400;
    src: url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Regular.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Regular.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "SFProMedium";
    font-style: normal;
    font-weight: 500;
    src: url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Medium.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Medium.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "SFProSemiBold";
    font-style: normal;
    font-weight: 600;
    src: url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Semibold.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/SFProDisplay-Semibold.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "SurtLight";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Surt-Light.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Surt-Light.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "Surt";
    font-style: normal;
    font-weight: 700;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Surt-Bold.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Surt-Bold.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "GothamLight";
    font-style: normal;
    font-weight: 300;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Light.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Light.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "GothamBook";
    font-style: normal;
    font-weight: 400;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Book.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Book.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "GothamMedium";
    font-style: normal;
    font-weight: 500;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Medium.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Gotham-Medium.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "Unica77";
    font-style: normal;
    font-weight: 400;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Unica77LLWeb.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Unica77LLWeb.woff") format("woff");
}

@font-face {
    font-display: swap;
    font-family: "Unica77Bold";
    font-style: normal;
    font-weight: 700;
    src: url("/wp-content/themes/all-time/public/assets/fonts/Unica77LLWeb-Bold.woff2") format("woff2"), url("/wp-content/themes/all-time/public/assets/fonts/Unica77LLWeb-Bold.woff") format("woff");
}


h1, h2, h3. h4, h5, h6, p {
	font-weight: 300;

}

h1 {
  font-size: clamp(22px, 7.5vw, 35px);
}

h2 {
  font-size: clamp(16px, 6.5vw, 30px);
}

h3 {
  font-size: clamp(13px, 5.5vw, 29px);
}

h4 {
  font-size: clamp(11px, 5vw, 28px);
}

h5 {
  font-size: clamp(10px, 4.5vw, 25px);
}

h6,
p {
  font-size: clamp(9px, 4.5vw, 22px);
  line-height: 1.5;
}

h2 {
	font-size: 2em;
    margin-bottom: 35px;
}

p {
    font-family: HelveticaNeueLT, arial, helvetica, sans-serif;
    font-size: 21px;
    margin-bottom: 20px;
    margin-top: 0
}

p:empty {
    display: none
}

cite,
dfn,
em,
i {
    font-style: italic
}

blockquote {
    margin: 0 1.5em
}

address {
    margin: 0 0 1.5em
}

pre {
    background: #eee;
    font-family: Courier\ 10 Pitch, courier monospace;
    line-height: 1.5;
    margin-bottom: 1.6em;
    max-width: 100%;
    padding: 1.6em
}

code,
kbd,
pre,
tt,
var {
    font-size: 1rem
}

abbr,
acronym {
    border-bottom: 1px dotted #666;
    cursor: help
}

ins,
mark {
    text-decoration: none
}

big {
    font-size: 125%
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

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

body {
    background: #000;
    display: flex;

    flex-direction: column;
    height: 100%;
    min-height: 100%;
    overflow-x: hidden;
    color: #fff;
}

blockquote,
q {
    quotes: "" ""
}

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

hr {
    background-color: #ccc;
    border: 0;
    height: 1px;
    margin-bottom: 1.5em
}

ol,
ul {
    margin: 0 0 20px;
    padding: 20px 0 0 25px
}

p+ol,
p+ul {
    padding: 0 0 0 25px
}

ul {
    list-style: circle
}

ol {
    list-style: decimal
}

li>ol,
li>ul {
    margin-bottom: 0;
    margin-left: 1.5em
}

dt {
    font-weight: 700
}

dd {
    margin: 0 1.5em 1.5em
}

ol.numbered {
    list-style: none
}

ol.numbered li {
    counter-increment: bullets
}

ol.numbered li,
ol.numbered li:before {
    align-items: center;
    display: flex
}

ol.numbered li:before {
    content: counter(bullets);
    font-size: .75em;
    height: 2em;
    justify-content: center;
    width: 2em
}

img {
    height: auto;
    max-width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none;
    width: 100%
}

svg:not(:root) {
    overflow: hidden
}

table {
    margin: 0 0 1.5em;
    width: 100%
}

.button,
.button.wc-backward,
[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button;
    background: #000;
    border: 1px solid #000;
    color: #fff;
    display: flex;
    font-size: 12px;
    font-weight: 400;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 16px 55px;
    text-transform: uppercase;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out;
    justify-content: center;
    align-items: center
}

.button.wc-backward:focus,
.button:focus,
[type=reset]:focus,
[type=submit]:focus,
button:focus,
html [type=button]:focus {
    outline: 0 none
}

.button.wc-backward:hover,
.button:hover,
[type=reset]:hover,
[type=submit]:hover,
button:hover,
html [type=button]:hover {
    cursor: pointer
}

.button.disabled,
.button.wc-backward.disabled,
.button.wc-backward:disabled,
.button:disabled,
[type=reset].disabled,
[type=reset]:disabled,
[type=submit].disabled,
[type=submit]:disabled,
button.disabled,
button:disabled,
html [type=button].disabled,
html [type=button]:disabled {
    cursor: not-allowed
}

.wp-block-button {
    height: 60px;
    border-radius: 2px !important;
    font-size: 14px !important;
}

.wp-block-button>a {
    background-color: transparent;
    border: 0;
    padding: 0
}

.wp-block-button:hover>a {
    color: inherit
}

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

button {
    background: none;
    border: none
}

.btn {
    cursor: pointer;
    font-size: 15px;
    padding: 15px 20px;
    text-align: center;
    text-decoration: none
}

@media (min-width:768px) {
    .btn {
        font-size: 15px
    }
}

.btn:hover {
    cursor: pointer;
    text-decoration: none
}

.btn>a,
.btn>a:hover {
    border-bottom: none;
    text-decoration: none
}

.btn--cta {
    display: inline-flex;
    width: auto;
    justify-content: center;
    align-items: center;
    border: 1px solid #d63638;
    cursor: pointer;
    font-size: 15px;
    line-height: 1.2;
    min-width: 170px;
    padding: 20px 15px;
    text-align: center;
    transition: all .68s ease-in-out
}

@media (min-width:768px) {
    .btn--cta {
        min-width: 150px
    }
}

.btn--cta:hover,
.btn--dark {
    background: #000;
    border: 1px solid #000;
    color: #fff;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn--dark {
    display: inline-block;
    min-width: 270px;
    padding: 18px 45px
}

.btn--dark:hover {
    background: transparent;
    color: #000;
    cursor: pointer;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn--share {
    display: flex;
    align-items: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    color: #000;
    cursor: pointer;
    font-style: normal;
    font-weight: 600;
    height: auto;
    letter-spacing: .08em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: normal;
    width: auto
}

@media (min-width:1024px) {
    .btn--share {
        margin-right: 10px
    }
}

.btn--share svg {
    height: 20px;
    vertical-align: middle;
    width: 20px
}

.btn--share.btn--small svg {
    height: 16px;
    margin-right: 4px;
    vertical-align: middle;
    width: 16px
}

.btn--small {
    font-size: .75em;
    line-height: 1;
    padding: 8px 10px
}

.btn--more {
    border: 1px solid grey;
    color: #000;
    display: block;
    font-size: 17px;
    margin: 0 auto;
    padding: 16px;
    text-align: center;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
    width: 85%
}

@media (min-width:768px) {
    .btn--more {
        min-width: 150px
    }
}

.btn--more:hover {
    background: #000;
    border: 1px solid #000;
    color: #fff !important
}

.btn--footer,
.btn--more:hover {
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn--footer {
    background: #fff;
    border: 1px solid #fff;
    color: #000;
    display: inline-block;
    min-width: 150px
}

.btn--footer:hover {
    background: transparent;
    color: #fff !important;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn--close {
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
    height: 20px;
    padding: 0;
    position: absolute;
    right: 20px;
    top: 20px;
    width: 20px
}

@media (min-width:768px) {
    .btn--close {
        line-height: 1;
        position: absolute;
        right: 28px;
        top: 48px
    }
}

.btn--form {
    background: #000;
    color: #fff;
    margin: 0 auto;
    padding: 20px 65px
}

.btn--form,
.btn--form:hover {
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn--form:hover {
    background: transparent;
    border: 1px solid #000;
    color: #000 !important
}

.btn-hero {
    background: #fff;
    border: 1px solid #fff;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: .1px;
    margin: 0 auto;
    padding: 20px 15px;
    text-align: center;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out;
    width: 200px
}

@media (min-width:768px) {
    .btn-hero {
        margin: 0
    }
}

.btn-hero:hover {
    background: transparent;
    border: 1px solid #fff;
    color: #fff;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

@media (min-width:768px) {
    .btn-hero:hover {
        background: #000;
        border: 1px solid #000
    }
}

.btn-feature {
    background: #fff;
    border: 1px solid #fff;
    border-radius: 7px;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 1px;
    padding: 25px 60px;
    text-align: center;
    text-transform: uppercase;
    width: 300px
}

.btn-feature,
.btn-feature:hover {
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out
}

.btn-feature:hover {
    background: transparent;
    border: 1px solid #fff;
    color: #fff
}

div.wpforms-container-full {
    width: 100% !important
}

.wpforms-container .wpforms-form .wpforms-field-description,
.wpforms-container .wpforms-form .wpforms-field-label,
.wpforms-container .wpforms-form .wpforms-field-sublabel,
.wpforms-container .wpforms-form li,
.wpforms-container .wpforms-form textarea,
.wpforms-container .wpforms-form th {
    color: #fff !important;
    font-size: 15px !important;
    letter-spacing: 2px !important;
    margin: 0 0 5px !important;
	font-weight: 300 !important;
    text-transform: uppercase !important;
    width: 100% !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],
.wp-core-ui div.wpforms-container-full select,
.wp-core-ui div.wpforms-container-full textarea,
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 {
    background: #fff !important;
    border: none !important;
    border-bottom: 1px solid hsla(0, 0%, 97%, .498) !important;
    color: #fff !important;
    font-size: 1rem !important;
    padding: 1rem 10px !important;
    -webkit-transition: border-color .3s ease !important
}

.wp-core-ui div.wpforms-container-full .wpforms-field-description,
.wp-core-ui div.wpforms-container-full .wpforms-field-limit-text,
div.wpforms-container-full .wpforms-field-description,
div.wpforms-container-full .wpforms-field-limit-text {
    display: none !important
}

div.wpforms-container-full:not(:empty) {
    margin-top: 0 !important
}

.wpforms-container .wpforms-form .wpforms-field-description,
.wpforms-container .wpforms-form .wpforms-field-label,
.wpforms-container .wpforms-form .wpforms-field-sublabel,
.wpforms-container .wpforms-form li,
.wpforms-container .wpforms-form textarea,
.wpforms-container .wpforms-form th {

    hyphens: auto;
    margin: 10px 0 !important
}

.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .submit-form-btn,
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .submit-form-btn,
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .submit-form-btn,
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .submit-form-btn,
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .submit-form-btn,
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .submit-form-btn {
    background: transparent;
    border: none;
    border-bottom: 1px solid #fff;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 18px;
    -ms-flex-pack: justify;
    justify-content: space-between;
    letter-spacing: 1px;
    padding: 1rem 10px;
    width: 100%;
    align-items: center;
    gap: .5rem;
    margin-top: 1rem
}

.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .button,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .button.wc-backward,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) [type=reset],
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) [type=submit],
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) button,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) html [type=button],
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .button,
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .button.wc-backward,
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) [type=reset],
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) [type=submit],
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) button,
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active) html [type=button],
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .button,
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .button.wc-backward,
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) [type=reset],
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) [type=submit],
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) button,
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active) html [type=button],
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .button,
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) .button.wc-backward,
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) [type=reset],
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) [type=submit],
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) button,
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) html [type=button],
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .button,
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) .button.wc-backward,
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) [type=reset],
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) [type=submit],
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) button,
div.wpforms-container-full button[type=submit]:not(:hover):not(:active) html [type=button],
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .button,
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) .button.wc-backward,
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) [type=reset],
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) [type=submit],
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) button,
div.wpforms-container-full input[type=submit]:not(:hover):not(:active) html [type=button] {
    -webkit-appearance: button;
    background: #000;
    border: 1px solid #000;
    color: #fff;
    display: flex;
    font-size: 12px;
    font-weight: 400;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 16px 55px;
    text-transform: uppercase;
    -webkit-transition: all .68s ease-in-out;
    transition: all .68s ease-in-out;
    justify-content: center;
    align-items: center
}


div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul li input, div.wpforms-container-full .wpforms-field.wpforms-field-radio ul li input, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul li input, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple ul li input, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul li input {border: 1px solid #fff;}

.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], .wp-core-ui div.wpforms-container-full select, 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 {
	background: #fff !important;
}









input:not([type]),
input[type=color],
input[type=date],
input[type=datetime-local],
input[type=datetime],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
select,
textarea {
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid #000;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #000;
    font-size: 18px;
    font-weight: 200;
    outline: none;
    padding: 15px;
    width: 100%
}

@media (min-width:1024px) {
    input:not([type]),
    input[type=color],
    input[type=date],
    input[type=datetime-local],
    input[type=datetime],
    input[type=email],
    input[type=month],
    input[type=number],
    input[type=password],
    input[type=search],
    input[type=tel],
    input[type=text],
    input[type=time],
    input[type=url],
    input[type=week],
    select,
    textarea {
        font-size: 15px
    }
}

input:not([type])::-webkit-input-placeholder,
input[type=color]::-webkit-input-placeholder,
input[type=date]::-webkit-input-placeholder,
input[type=datetime-local]::-webkit-input-placeholder,
input[type=datetime]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=month]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=text]::-webkit-input-placeholder,
input[type=time]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
input[type=week]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    opacity: 1
}

input:not([type])::-moz-placeholder,
input[type=color]::-moz-placeholder,
input[type=date]::-moz-placeholder,
input[type=datetime-local]::-moz-placeholder,
input[type=datetime]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=month]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=text]::-moz-placeholder,
input[type=time]::-moz-placeholder,
input[type=url]::-moz-placeholder,
input[type=week]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1
}

input:not([type]):-ms-input-placeholder,
input[type=color]:-ms-input-placeholder,
input[type=date]:-ms-input-placeholder,
input[type=datetime-local]:-ms-input-placeholder,
input[type=datetime]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=month]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=text]:-ms-input-placeholder,
input[type=time]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
input[type=week]:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    opacity: 1
}

input:not([type])::-ms-input-placeholder,
input[type=color]::-ms-input-placeholder,
input[type=date]::-ms-input-placeholder,
input[type=datetime-local]::-ms-input-placeholder,
input[type=datetime]::-ms-input-placeholder,
input[type=email]::-ms-input-placeholder,
input[type=month]::-ms-input-placeholder,
input[type=number]::-ms-input-placeholder,
input[type=password]::-ms-input-placeholder,
input[type=search]::-ms-input-placeholder,
input[type=tel]::-ms-input-placeholder,
input[type=text]::-ms-input-placeholder,
input[type=time]::-ms-input-placeholder,
input[type=url]::-ms-input-placeholder,
input[type=week]::-ms-input-placeholder,
select::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    opacity: 1
}

input:not([type])::placeholder,
input[type=color]::placeholder,
input[type=date]::placeholder,
input[type=datetime-local]::placeholder,
input[type=datetime]::placeholder,
input[type=email]::placeholder,
input[type=month]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=text]::placeholder,
input[type=time]::placeholder,
input[type=url]::placeholder,
input[type=week]::placeholder,
select::placeholder,
textarea::placeholder {
    opacity: 1
}

select:hover {
    cursor: pointer
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    border-radius: 0
}

textarea {
    max-height: 150px
}

input[type=date]::-webkit-clear-button,
input[type=date]::-webkit-inner-spin-button {
    display: none
}

input[type=date]::-webkit-calendar-picker-indicator {
    color: #2c3e50
}

input[type=date] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #95a5a6;
    display: inline-block !important;
    max-height: 49px;
    min-height: 49px
}

input[type=date]:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    color: #95a5a6
}

label {
    cursor: pointer;
    font-size: 16px;
    font-weight: 200
}

.required {
    color: red
}

input[type=checkbox],
input[type=radio] {
    -webkit-appearance: none;
    background: transparent;
    border: 2px solid #e2e2e2;
    cursor: pointer;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 16px;
    margin-right: 10px;
    position: relative;
    width: 16px
}

input[type=checkbox]:hover,
input[type=radio]:hover {
    background: transparent;
    border: 2px solid #a9a9a9
}

@media (min-width:768px) {
    input[type=checkbox]:hover,
    input[type=radio]:hover {
        background: #000
    }
}

input[type=checkbox]:checked,
input[type=radio]:checked {
    background: #000;
    border: 2px solid #c1c1c1
}

input[type=checkbox]:focus,
input[type=radio]:focus {
    outline: none
}

input[type=checkbox] {
    border-radius: 4px;
    height: 25px;
    width: 25px
}

input[type=checkbox]:before {
    color: #fff;
    content: "✓";
    display: none;
    font-size: 20px;
    -webkit-font-smoothing: antialiased;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    font-style: normal;
    font-variant: normal;
    font-weight: 900;
    left: 1px;
    position: absolute;
    text-rendering: auto;
    top: -4px
}

input[type=checkbox]:checked:before {
    display: inline-block
}

input[type=radio] {
    border-radius: 50px
}

input[type=SEARCH]::-webkit-search-cancel-button,
input[type=SEARCh]::-webkit-search-cancel-button,
input[type=SEARcH]::-webkit-search-cancel-button,
input[type=SEARch]::-webkit-search-cancel-button,
input[type=SEArCH]::-webkit-search-cancel-button,
input[type=SEArCh]::-webkit-search-cancel-button,
input[type=SEArcH]::-webkit-search-cancel-button,
input[type=SEArch]::-webkit-search-cancel-button,
input[type=SEaRCH]::-webkit-search-cancel-button,
input[type=SEaRCh]::-webkit-search-cancel-button,
input[type=SEaRcH]::-webkit-search-cancel-button,
input[type=SEaRch]::-webkit-search-cancel-button,
input[type=SEarCH]::-webkit-search-cancel-button,
input[type=SEarCh]::-webkit-search-cancel-button,
input[type=SEarcH]::-webkit-search-cancel-button,
input[type=SEarch]::-webkit-search-cancel-button,
input[type=SeARCH]::-webkit-search-cancel-button,
input[type=SeARCh]::-webkit-search-cancel-button,
input[type=SeARcH]::-webkit-search-cancel-button,
input[type=SeARch]::-webkit-search-cancel-button,
input[type=SeArCH]::-webkit-search-cancel-button,
input[type=SeArCh]::-webkit-search-cancel-button,
input[type=SeArcH]::-webkit-search-cancel-button,
input[type=SeArch]::-webkit-search-cancel-button,
input[type=SeaRCH]::-webkit-search-cancel-button,
input[type=SeaRCh]::-webkit-search-cancel-button,
input[type=SeaRcH]::-webkit-search-cancel-button,
input[type=SeaRch]::-webkit-search-cancel-button,
input[type=SearCH]::-webkit-search-cancel-button,
input[type=SearCh]::-webkit-search-cancel-button,
input[type=SearcH]::-webkit-search-cancel-button,
input[type=Search]::-webkit-search-cancel-button,
input[type=sEARCH]::-webkit-search-cancel-button,
input[type=sEARCh]::-webkit-search-cancel-button,
input[type=sEARcH]::-webkit-search-cancel-button,
input[type=sEARch]::-webkit-search-cancel-button,
input[type=sEArCH]::-webkit-search-cancel-button,
input[type=sEArCh]::-webkit-search-cancel-button,
input[type=sEArcH]::-webkit-search-cancel-button,
input[type=sEArch]::-webkit-search-cancel-button,
input[type=sEaRCH]::-webkit-search-cancel-button,
input[type=sEaRCh]::-webkit-search-cancel-button,
input[type=sEaRcH]::-webkit-search-cancel-button,
input[type=sEaRch]::-webkit-search-cancel-button,
input[type=sEarCH]::-webkit-search-cancel-button,
input[type=sEarCh]::-webkit-search-cancel-button,
input[type=sEarcH]::-webkit-search-cancel-button,
input[type=sEarch]::-webkit-search-cancel-button,
input[type=seARCH]::-webkit-search-cancel-button,
input[type=seARCh]::-webkit-search-cancel-button,
input[type=seARcH]::-webkit-search-cancel-button,
input[type=seARch]::-webkit-search-cancel-button,
input[type=seArCH]::-webkit-search-cancel-button,
input[type=seArCh]::-webkit-search-cancel-button,
input[type=seArcH]::-webkit-search-cancel-button,
input[type=seArch]::-webkit-search-cancel-button,
input[type=seaRCH]::-webkit-search-cancel-button,
input[type=seaRCh]::-webkit-search-cancel-button,
input[type=seaRcH]::-webkit-search-cancel-button,
input[type=seaRch]::-webkit-search-cancel-button,
input[type=searCH]::-webkit-search-cancel-button,
input[type=searCh]::-webkit-search-cancel-button,
input[type=searcH]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    background-size: contain;
    border-radius: 50em;
    height: 1em;
    opacity: 0;
    pointer-events: none;
    width: 1em
}

input[type=SEARCH]:focus::-webkit-search-cancel-button,
input[type=SEARCh]:focus::-webkit-search-cancel-button,
input[type=SEARcH]:focus::-webkit-search-cancel-button,
input[type=SEARch]:focus::-webkit-search-cancel-button,
input[type=SEArCH]:focus::-webkit-search-cancel-button,
input[type=SEArCh]:focus::-webkit-search-cancel-button,
input[type=SEArcH]:focus::-webkit-search-cancel-button,
input[type=SEArch]:focus::-webkit-search-cancel-button,
input[type=SEaRCH]:focus::-webkit-search-cancel-button,
input[type=SEaRCh]:focus::-webkit-search-cancel-button,
input[type=SEaRcH]:focus::-webkit-search-cancel-button,
input[type=SEaRch]:focus::-webkit-search-cancel-button,
input[type=SEarCH]:focus::-webkit-search-cancel-button,
input[type=SEarCh]:focus::-webkit-search-cancel-button,
input[type=SEarcH]:focus::-webkit-search-cancel-button,
input[type=SEarch]:focus::-webkit-search-cancel-button,
input[type=SeARCH]:focus::-webkit-search-cancel-button,
input[type=SeARCh]:focus::-webkit-search-cancel-button,
input[type=SeARcH]:focus::-webkit-search-cancel-button,
input[type=SeARch]:focus::-webkit-search-cancel-button,
input[type=SeArCH]:focus::-webkit-search-cancel-button,
input[type=SeArCh]:focus::-webkit-search-cancel-button,
input[type=SeArcH]:focus::-webkit-search-cancel-button,
input[type=SeArch]:focus::-webkit-search-cancel-button,
input[type=SeaRCH]:focus::-webkit-search-cancel-button,
input[type=SeaRCh]:focus::-webkit-search-cancel-button,
input[type=SeaRcH]:focus::-webkit-search-cancel-button,
input[type=SeaRch]:focus::-webkit-search-cancel-button,
input[type=SearCH]:focus::-webkit-search-cancel-button,
input[type=SearCh]:focus::-webkit-search-cancel-button,
input[type=SearcH]:focus::-webkit-search-cancel-button,
input[type=Search]:focus::-webkit-search-cancel-button,
input[type=sEARCH]:focus::-webkit-search-cancel-button,
input[type=sEARCh]:focus::-webkit-search-cancel-button,
input[type=sEARcH]:focus::-webkit-search-cancel-button,
input[type=sEARch]:focus::-webkit-search-cancel-button,
input[type=sEArCH]:focus::-webkit-search-cancel-button,
input[type=sEArCh]:focus::-webkit-search-cancel-button,
input[type=sEArcH]:focus::-webkit-search-cancel-button,
input[type=sEArch]:focus::-webkit-search-cancel-button,
input[type=sEaRCH]:focus::-webkit-search-cancel-button,
input[type=sEaRCh]:focus::-webkit-search-cancel-button,
input[type=sEaRcH]:focus::-webkit-search-cancel-button,
input[type=sEaRch]:focus::-webkit-search-cancel-button,
input[type=sEarCH]:focus::-webkit-search-cancel-button,
input[type=sEarCh]:focus::-webkit-search-cancel-button,
input[type=sEarcH]:focus::-webkit-search-cancel-button,
input[type=sEarch]:focus::-webkit-search-cancel-button,
input[type=seARCH]:focus::-webkit-search-cancel-button,
input[type=seARCh]:focus::-webkit-search-cancel-button,
input[type=seARcH]:focus::-webkit-search-cancel-button,
input[type=seARch]:focus::-webkit-search-cancel-button,
input[type=seArCH]:focus::-webkit-search-cancel-button,
input[type=seArCh]:focus::-webkit-search-cancel-button,
input[type=seArcH]:focus::-webkit-search-cancel-button,
input[type=seArch]:focus::-webkit-search-cancel-button,
input[type=seaRCH]:focus::-webkit-search-cancel-button,
input[type=seaRCh]:focus::-webkit-search-cancel-button,
input[type=seaRcH]:focus::-webkit-search-cancel-button,
input[type=seaRch]:focus::-webkit-search-cancel-button,
input[type=searCH]:focus::-webkit-search-cancel-button,
input[type=searCh]:focus::-webkit-search-cancel-button,
input[type=searcH]:focus::-webkit-search-cancel-button,
input[type=search]:focus::-webkit-search-cancel-button {
    opacity: .3;
    pointer-events: all
}

.footer-form {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 30px
}

@media (min-width:1024px) {
    .footer-form {
        grid-template-columns: 1fr 1fr;
        grid-gap: 20px 40px
    }
    .footer-form .message {
        grid-column: span 2
    }
}

.footer-form input:not([type]),
.footer-form input[type=color],
.footer-form input[type=datetime],
.footer-form input[type=email],
.footer-form input[type=month],
.footer-form input[type=number],
.footer-form input[type=search],
.footer-form input[type=tel],
.footer-form input[type=text],
.footer-form input[type=time],
.footer-form input[type=url],
.footer-form input[type=week],
.footer-form select,
.footer-form textarea,
input[type=password] {
    -webkit-appearance: none;
    background: transparent;
    border: none;
    border-bottom: 1px solid #000;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #000;
    font-size: 18px;
    font-weight: 200;
    margin-bottom: 20px;
    outline: none;
    padding: 17px 15px;
    width: 100%
}

:-moz-placeholder {
    opacity: 1;
    -moz-transition: opacity .5s;
    transition: opacity .5s
}

::-webkit-input-placeholder {
    opacity: 1;
    -webkit-transition: opacity .5s;
    transition: opacity .5s
}

::-moz-placeholder {
    opacity: 1;
    -moz-transition: opacity .5s;
    transition: opacity .5s
}

:-ms-input-placeholder {
    opacity: 1;
    -ms-transition: opacity .5s;
    transition: opacity .5s
}

::-ms-input-placeholder {
    opacity: 1;
    -ms-transition: opacity .5s;
    transition: opacity .5s
}

::placeholder {
    opacity: 1;
    -webkit-transition: opacity .5s;
    transition: opacity .5s
}

:focus:-moz-placeholder {
    opacity: 0
}

:focus::-webkit-input-placeholder {
    opacity: 0
}

:focus::-moz-placeholder {
    opacity: 0
}

:focus:-ms-input-placeholder {
    opacity: 0
}

:focus::-ms-input-placeholder {
    opacity: 0
}

:focus::placeholder {
    opacity: 0
}

.contact-form-group label {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 3px
}

.submit-form-btn .contact-form-group input,
.submit-form-btn .contact-form-group select,
.submit-form-btn .contact-form-group textarea {
    background: hsla(0, 0%, 100%, .09);
    border: none;
    border-bottom: 1px solid hsla(0, 0%, 97%, .498);
    color: #fff;
    font-size: 1rem;
    padding: 1rem 10px;
    -webkit-transition: border-color .3s ease;
    transition: border-color .3s ease;
    width: 100%
}

.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=date],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=datetime-local],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=datetime],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=email],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=month],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=number],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=password],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=range],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=search],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=tel],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=text],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=time],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=url],
.submit-form-btn .wp-core-ui div.wpforms-container-full input[type=week],
.submit-form-btn .wp-core-ui div.wpforms-container-full select,
.submit-form-btn .wp-core-ui div.wpforms-container-full textarea,
.submit-form-btn div.wpforms-container-full input[type=date],
.submit-form-btn div.wpforms-container-full input[type=datetime-local],
.submit-form-btn div.wpforms-container-full input[type=datetime],
.submit-form-btn div.wpforms-container-full input[type=email],
.submit-form-btn div.wpforms-container-full input[type=month],
.submit-form-btn div.wpforms-container-full input[type=number],
.submit-form-btn div.wpforms-container-full input[type=password],
.submit-form-btn div.wpforms-container-full input[type=range],
.submit-form-btn div.wpforms-container-full input[type=search],
.submit-form-btn div.wpforms-container-full input[type=tel],
.submit-form-btn div.wpforms-container-full input[type=text],
.submit-form-btn div.wpforms-container-full input[type=time],
.submit-form-btn div.wpforms-container-full input[type=url],
.submit-form-btn div.wpforms-container-full input[type=week],
.submit-form-btn div.wpforms-container-full select,
.submit-form-btn div.wpforms-container-full textarea {
    background: hsla(0, 0%, 100%, .09) !important;
    border: none;
    border-bottom: 1px solid hsla(0, 0%, 97%, .498) !important;
    color: #fff !important;
    font-size: 1rem !important;
    padding: 1rem 10px !important;
    -webkit-transition: border-color .3s ease !important;
    transition: border-color .3s ease !important;
    width: 100% !important
}

.wpforms-container ::-webkit-input-placeholder {
    color: #fff !important
}

.wpforms-container ::-moz-placeholder {
    color: #fff !important;
    opacity: 1 !important
}

.wpforms-container :-ms-input-placeholder {
    color: #fff !important
}

.wpforms-container ::-ms-input-placeholder {
    color: #fff !important
}

.wpforms-container ::placeholder {
    color: #fff !important
}

#wpforms-submit-8712 {
    background: #a40000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: none;
    border-bottom: 1px solid #a90000;
    color: #fff;
    cursor: pointer;
    font-size: 15px;
    gap: .5rem;
    margin-top: 1rem;
    height: 65px;
    padding: 1.5rem 16px;
    text-transform: uppercase;
    letter-spacing:3px;
    font-weight: 300;
    transition: all .3s ease-in-out;  
      width: 100%
}


#wpforms-submit-8712:hover {
    background: #c90000;
    transition: all .3s ease-in-out;  
}
#wpforms-submit-8712:after {
    background-image: url("data:image/svg+xml;utf8,<svg fill='none' stroke='white' stroke-width='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M5 12h14M19 12l-7-7m7 7l-7 7'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: inline-block;
    height: 16px;
    width: 25px
}

a {
    background-color: transparent;
    color: inherit;
}

a,
a:visited {
    text-decoration: none
}

a:active,
a:focus,
a:hover,
a:visited:active,
a:visited:focus,
a:visited:hover {
    outline: 0
}

a:link,
a:visited:link {
    outline: 0;
    -webkit-tap-highlight-color: rgba(0, 0, 0, .3)
}

.link {
    display: inline-block;
    overflow: hidden;
    position: relative;
    vertical-align: middle
}

.link:not(.no-hover):hover:after {
    -webkit-transition: background .6s cubic-bezier(.19, 1, .22, 1), -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .1s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .1s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), transform .6s cubic-bezier(.19, 1, .22, 1) .1s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), transform .6s cubic-bezier(.19, 1, .22, 1) .1s, -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .1s
}

.link:after {
    background: #fff;
    bottom: 1px;
    content: "";
    display: block;
    height: 1px;
    opacity: .75;
    position: absolute;
    transition: background .8s cubic-bezier(.19, 1, .22, 1), -webkit-transform .5s cubic-bezier(1, 0, 0, 1) .1s;
    -webkit-transition: background .8s cubic-bezier(.19, 1, .22, 1), -webkit-transform .5s cubic-bezier(1, 0, 0, 1) .1s;
    transition: background .8s cubic-bezier(.19, 1, .22, 1), transform .5s cubic-bezier(1, 0, 0, 1) .1s;
    transition: background .8s cubic-bezier(.19, 1, .22, 1), transform .5s cubic-bezier(1, 0, 0, 1) .1s, -webkit-transform .5s cubic-bezier(1, 0, 0, 1) .1s;
    width: 100%
}

.link--clear:hover:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.link--clear:after {
    -webkit-transform: translate3d(-102%, 0, 0);
    transform: translate3d(-102%, 0, 0)
}

.link-u {
    border-bottom: 1px solid #000
}

#wpadminbar a {
    background-color: transparent;
    border-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    text-decoration: none
}

.linkdk {
    display: inline-block;
    overflow: hidden;
    position: relative;
    vertical-align: middle
}

.linkdk:after {
    background: #000;
    bottom: 1px;
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    -webkit-transform: translate3d(-102%, 0, 0);
    transform: translate3d(-102%, 0, 0);
    -webkit-transition: background .8s cubic-bezier(.19, 1, .22, 1), -webkit-transform .8s cubic-bezier(.19, 1, .22, 1);
    transition: background .8s cubic-bezier(.19, 1, .22, 1), -webkit-transform .8s cubic-bezier(.19, 1, .22, 1);
    transition: background .8s cubic-bezier(.19, 1, .22, 1), transform .8s cubic-bezier(.19, 1, .22, 1);
    transition: background .8s cubic-bezier(.19, 1, .22, 1), transform .8s cubic-bezier(.19, 1, .22, 1), -webkit-transform .8s cubic-bezier(.19, 1, .22, 1);
    width: 100%
}

.linkdk:not(.no-hover):hover:after {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: background .6s cubic-bezier(.19, 1, .22, 1), -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .05s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .05s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), transform .6s cubic-bezier(.19, 1, .22, 1) .05s;
    transition: background .6s cubic-bezier(.19, 1, .22, 1), transform .6s cubic-bezier(.19, 1, .22, 1) .05s, -webkit-transform .6s cubic-bezier(.19, 1, .22, 1) .05s
}

a#portfolio {
    color: #000;
    font-family: arial;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none
}

a#portfolio:before {
    content: "+";
    display: inline-block;
    padding-right: .3rem
}



.site-main .comment-navigation,
.site-main .post-navigation,
.site-main .posts-navigation {
    margin: 0 0 1.5em;
    overflow: hidden
}

.comment-navigation .nav-previous,
.post-navigation .nav-previous,
.posts-navigation .nav-previous {
    float: left;
    width: 50%
}

.comment-navigation .nav-next,
.post-navigation .nav-next,
.posts-navigation .nav-next {
    float: right;
    text-align: right;
    width: 50%
}

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px
}

.screen-reader-text:active,
.screen-reader-text:focus,
.screen-reader-text:hover {
    background-color: #f1f1f1;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, .6);
    clip: auto !important;
    color: #000;
    display: block;
    font-size: 1rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

.is-transitioning {
    display: block !important;
    visibility: visible !important
}

.scroll {
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch
}

.noscroll {
    overflow: hidden;
    overflow-x: hidden;
    overflow-y: hidden
}

@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}

@-webkit-keyframes fadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1
    }
    to {
        opacity: 0
    }
}

@-webkit-keyframes slideInFade {
    0% {
        opacity: 0;
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }
    50% {
        opacity: .4
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@keyframes slideInFade {
    0% {
        opacity: 0;
        -webkit-transform: translateX(50px);
        transform: translateX(50px)
    }
    50% {
        opacity: .4
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

@-webkit-keyframes slideOutFade {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        opacity: .4
    }
    to {
        opacity: 0;
        -webkit-transform: translateX(-125px);
        transform: translateX(-125px)
    }
}

@keyframes slideOutFade {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    50% {
        opacity: .4
    }
    to {
        opacity: 0;
        -webkit-transform: translateX(-125px);
        transform: translateX(-125px)
    }
}

@-webkit-keyframes pulse-black {
    0% {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    to {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
}

@keyframes pulse-black {
    0% {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
    to {
        -webkit-transform: scale(.95);
        transform: scale(.95)
    }
}

.animate--fade.-is-visible {
    opacity: 1;
    -webkit-transition: opacity 1s cubic-bezier(.55, .085, .68, .53);
    transition: opacity 1s cubic-bezier(.55, .085, .68, .53)
}

.animate--fade-alt {
    opacity: 0
}

.animate--fade-alt.-is-visible {
    opacity: .45;
    -webkit-transition: .5s cubic-bezier(.55, .085, .68, .53);
    transition: .5s cubic-bezier(.55, .085, .68, .53)
}

.animate--fade-text.-is-visible {
    opacity: 1;
    -webkit-transition: .8s cubic-bezier(.55, .085, .68, .53);
    transition: .8s cubic-bezier(.55, .085, .68, .53)
}

.animate--fade-slide {
    opacity: 0;
    -webkit-transform: translate(-50%, 100px);
    transform: translate(-50%, 100px)
}

.animate--fade-slide.-is-visible {
    opacity: 1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: opacity 2s cubic-bezier(.23, 1, .32, 1), -webkit-transform .7s cubic-bezier(.25, .46, .45, .94);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), -webkit-transform .7s cubic-bezier(.25, .46, .45, .94);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), transform .7s cubic-bezier(.25, .46, .45, .94);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), transform .7s cubic-bezier(.25, .46, .45, .94), -webkit-transform .7s cubic-bezier(.25, .46, .45, .94)
}

.animate--cover {
    opacity: 0;
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
}

.animate--cover.-is-visible {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: opacity 2s cubic-bezier(.23, 1, .32, 1), -webkit-transform 5s cubic-bezier(.23, 1, .32, 1);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), -webkit-transform 5s cubic-bezier(.23, 1, .32, 1);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), transform 5s cubic-bezier(.23, 1, .32, 1);
    transition: opacity 2s cubic-bezier(.23, 1, .32, 1), transform 5s cubic-bezier(.23, 1, .32, 1), -webkit-transform 5s cubic-bezier(.23, 1, .32, 1)
}

.animate--fade-slow {
    opacity: 0
}

.animate--fade-slow.-is-visible {
    opacity: 1;
    -webkit-transition: 1.75s ease-out;
    transition: 1.75s ease-out
}

.animate--fade-up {
    opacity: 0
}

.animate--fade-up.-is-visible {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    -webkit-transition: opacity 1s cubic-bezier(.55, .085, .68, .53) 0s, -webkit-transform 1s cubic-bezier(.25, .46, .45, .94) 0s;
    transition: opacity 1s cubic-bezier(.55, .085, .68, .53) 0s, -webkit-transform 1s cubic-bezier(.25, .46, .45, .94) 0s;
    transition: opacity 1s cubic-bezier(.55, .085, .68, .53) 0s, transform 1s cubic-bezier(.25, .46, .45, .94) 0s;
    transition: opacity 1s cubic-bezier(.55, .085, .68, .53) 0s, transform 1s cubic-bezier(.25, .46, .45, .94) 0s, -webkit-transform 1s cubic-bezier(.25, .46, .45, .94) 0s
}

.widget {
    margin: 0 0 1.5em
}

.widget select {
    max-width: 100%
}

.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer,
.widget_search .search-submit {
    display: none
}

.infinity-end.neverending .site-footer {
    display: block
}

.comment-content .wp-smiley,
.entry-content .wp-smiley,
.page-content .wp-smiley {
    border: none;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0
}

.wp-caption,
embed,
iframe,
object {
    max-width: 100%
}

.wp-caption {
    margin-bottom: 1.5em
}

.wp-caption img[class*=wp-image-] {
    text-align: center
}

.wp-caption .wp-caption-text {
    margin: .8075em 0
}

.wp-caption-text {
    text-align: center
}

.gallery {
    margin-bottom: 1.5em
}

.gallery-item {
    display: inline-block;
    text-align: center;
    vertical-align: top;
    width: 100%
}

.gallery-columns-2 .gallery-item {
    max-width: 50%
}

.gallery-columns-3 .gallery-item {
    max-width: 33.33%
}

.gallery-columns-4 .gallery-item {
    max-width: 25%
}

.gallery-columns-5 .gallery-item {
    max-width: 20%
}

.gallery-columns-6 .gallery-item {
    max-width: 16.66%
}

.gallery-columns-7 .gallery-item {
    max-width: 14.28%
}

.gallery-columns-8 .gallery-item {
    max-width: 12.5%
}

.gallery-columns-9 .gallery-item {
    max-width: 11.11%
}

.gallery-caption {
    display: block
}

@-webkit-keyframes fadeInTitle {
    to {
        opacity: 1
    }
}

.property-slider {
    font-family: sans-serif;
    height: 100%;
    margin: 0 auto;
    max-height: 600px;
    overflow: hidden;
    width: 100%
}

@media (min-width:1024px) {
    .property-slider {
        max-height: 750px
    }
}

.property-slider__title {
    -webkit-animation: fadeInTitle 1.5s ease-in-out .5s forwards;
    animation: fadeInTitle 1.5s ease-in-out .5s forwards;
    color: #fff;
    font-family: GothamLight, HelveticaNeueLT, arial, sans-serif;
    font-size: max(2.15rem, min(5vw, 2.68rem));
    font-weight: 300;
    left: 50%;
    letter-spacing: 1px;
    letter-spacing: 1.5px;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 100
}

@keyframes fadeInTitle {
    to {
        opacity: 1
    }
}

.property-slider__swiper {
    height: 100%;
    max-height: 600px;
    position: relative;
    width: 100%
}

@media (min-width:1024px) {
    .property-slider__swiper {
        max-height: 750px
    }
}

.property-slider__swiper-wrapper {
    display: flex
}

.property-slider__slide {
    background: #fff;
    font-size: 18px;
    height: 100%;
    max-height: 600px;
    position: relative;
    text-align: center;
    width: auto
}

@media (min-width:1024px) {
    .property-slider__slide {
        max-height: 750px
    }
}

.property-slider__slide:after {
    background: linear-gradient(355deg, rgba(0, 0, 0, .17) 1000px, transparent 50%);
    content: "";
    height: 100%;
    left: 0;
    max-height: 600px;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

@media (min-width:1024px) {
    .property-slider__slide:after {
        max-height: 750px
    }
}

.property-slider__slide img {
    display: block;
    height: 100%;
    max-height: 600px;
    -o-object-fit: cover;
    object-fit: cover;
    width: auto
}

@media (min-width:1024px) {
    .property-slider__slide img {
        max-height: 750px
    }
}

.investments-swiper-wrapper .container {
    height: 100%;
    margin: 0 auto;
    max-width: 100%;
    width: 100%
}

.investments-swiper-wrapper .swiper-slide {
    overflow: hidden;
    position: relative
}

.investments-swiper-wrapper .swiper-slide img {
    min-width: 60vw
}

.investments-swiper-wrapper .swiper-slide:before {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .24)), color-stop(50%, rgba(0, 0, 0, .24)), to(transparent));
    background: linear-gradient(180deg, rgba(0, 0, 0, .24) 0, rgba(0, 0, 0, .24) 50%, transparent);
    content: "";
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 5
}

.investments-swiper-wrapper .swiper-slide img {
    display: block;
    height: 100%;
    max-height: 560px;
    min-height: 560px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.investments-swiper-wrapper .investments-swiper-slider {
    position: relative
}

.investments-swiper-wrapper .investments-swiper-slider .swiper-slider img {
    min-width: 50vw
}

.investments-swiper-wrapper h1 {
    color: #fff;
    font-family: GothamLight, HelveticaNeueLT, arial, sans-serif;
    font-size: 35px;
    font-weight: 300;
    left: 50%;
    letter-spacing: 1.5px;
    pointer-events: none;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 15
}

@media (min-width:992px) {
    .investments-swiper-wrapper .container,
    .investments-swiper-wrapper .swiper-slide img {
        max-height: 34vw;
        min-height: 34vw
    }
}

.investments-swiper-slider .swiper-slide {
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease
}

.investments-swiper-slider .swiper-slide-active {
    z-index: 2
}

.investments-swiper-slider .swiper-slide img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
    width: 100%
}

.projects-swiper-wrapper {
    position: relative
}

.projects-swiper-wrapper .container {
    margin: 0 auto;
    width: 100%
}

#projectsSwiper {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
    padding: 0;
    position: relative
}

#projectsSwiper .swiper-slide {
    height: 600px;
    width: 30vw;
    -ms-flex-negative: 0;
    background-color: #f0f0f0;
    flex-shrink: 0
}

@media (min-width:1024px) {
    #projectsSwiper .swiper-slide {
        height: 600px;
        max-height: 600px
    }
}

@media (min-width:1440px) {
    #projectsSwiper .swiper-slide {
        height: 700px;
        max-height: 700px
    }
}

#projectsSwiper .swiper-slide img,
#projectsSwiper .swiper-slide video {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media (max-width:768px) {
    #projectsSwiper .swiper-slide-active {
        width: 80vw
    }
    #projectsSwiper .swiper-slide-next,
    #projectsSwiper .swiper-slide-prev {
        width: calc(10vw - .5px)
    }
}

@media (min-width:769px) {
    #projectsSwiper {
        padding: 0 10%
    }
    #projectsSwiper .swiper-slide {
        width: 80%
    }
}

.projects-swiper-controls .projects-swiper-button-next,
.projects-swiper-controls .projects-swiper-button-prev {
    background-color: #000;
    border-radius: 0;
    color: #fff;
    height: 20px;
    padding: 15px;
    position: static;
    width: 20px;
    fill: #fff;
    display: none;
    font-size: 0;
    justify-content: center;
    align-items: center;
    cursor: pointer
}

.projects-swiper-controls .projects-swiper-button-next:after,
.projects-swiper-controls .projects-swiper-button-prev:after {
    color: #fff;
    font-size: 18px
}

.projects-swiper-controls {
    bottom: 20px;
    display: flex;
    position: absolute;
    right: 20px;
    align-items: center;
    gap: 8px;
    z-index: 10
}

.projects-swiper-pagination {
    background: #000;
    color: #fff;
    display: none;
    font-size: 14px;
    left: 20px;
    line-height: 1;
    padding: 15px;
    position: absolute;
    top: 20px;
    z-index: 10
}

.projects-global-title {
    color: #fff;
    font-family: GothamLight, HelveticaNeueLT, arial, sans-serif;
    font-size: 35px;
    font-weight: 300;
    left: 50%;
    letter-spacing: 0;
    pointer-events: none;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 15
}

@media (min-width:1024px) {
    .projects-global-title {
        font-size: 35px
    }
}

@media (min-width:768px) {
    .projects-global-title {
        font-size: 38px
    }
}

#projectsSwiper .swiper-slide {
    overflow: hidden;
    position: relative
}

#projectsSwiper .swiper-slide .slide-gradient-overlay {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .24)), to(rgba(0, 0, 0, .24)));
    background: linear-gradient(rgba(0, 0, 0, .24), rgba(0, 0, 0, .24));
    bottom: 0;
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.visually-hidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}

.clearfix:after,
.clearfix:before {
    content: "";
    display: table
}

.clearfix:after {
    clear: both
}

.flow {
    --flow-space: 1em
}

.flow>*+* {
    margin-top: var(1em)
}

.-hide-page-overflow {
    overflow: hidden
}

.site-main {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto
}

.content-width {
    margin: 0 auto;
    padding: 0;
    width: 98%
}

@media (min-width:1024px) {
    .content-width {
        width: 90%
    }
}

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

@media (min-width:1024px) {
    .container-width {
        width: 90%
    }
}

.site-content .content-area,
.site-footer .content-area,
.site-header .content-area {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100%
}

.site-content .content-width,
.site-footer .content-width,
.site-header .content-width {
    padding: 0 20px
}

@media (min-width:768px) {
    .site-content .content-width,
    .site-footer .content-width,
    .site-header .content-width {
        padding: 0 30px
    }
}

.wp-block-columns {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.error404 .widget-area {
    padding-top: 1em
}

@media (min-width:915px) {
    .error404 .widget-area {
        padding-top: 6em
    }
}

.relative {
    position: relative
}

.block {
    display: block
}

.col-12 {
    width: 100%
}

.zn1 {
    z-index: -1
}

.z3 {
    z-index: 3
}

.top-0 {
    top: 0
}

.left-0 {
    left: 0
}

.bottom-0 {
    bottom: 0
}

.right-0 {
    right: 0
}

.big-bg {
    background-position: center 100%;
    background-repeat: no-repeat;
    background-size: cover
}

@media (min-width:1024px) {
    .md-sticky {
        position: sticky
    }
    .md-hide {
        display: none !important
    }
}

.sm-show {
    display: none
}

@media (min-width:768px) {
    .sm-show {
        display: block
    }
}

.md-show {
    display: none
}

@media (min-width:1024px) {
    .md-show {
        display: block
    }
    .md-absolute {
        position: absolute
    }
    .md-h100 {
        height: 100vh
    }
}

.intro {
    padding: 90px 0;
    position: relative
}

@media (min-width:1024px) {
    .intro {
        padding: 7em 0
    }
}

.container-intro {
    margin: 0 auto;
    max-width: 95%;
    padding: 0 30px
}

@media (min-width:1024px) {
    .container-intro {
        max-width: 90%
    }
}

@media (min-width:1920px) {
    .container-intro {
        max-width: 80%
    }
}

@media (min-width:900px) and (max-width:1200px) {
    .container-intro {
        padding: 0 3%
    }
}

.container-intro-small {
    margin: 0 auto;
    max-width: 100%;
    padding: 0 40px
}

@media (min-width:1024px) {
    .container-intro-small {
        max-width: 80%
    }
}

.site-header {
    background: #292d30;
    justify-content: center;
    width: 100%
}

.site-header,
.site-header>.content-width {
    align-items: center;
    display: flex
}

.site-header>.content-width {
    -ms-flex-pack: justify;
    justify-content: space-between
}

.site-header.header--mobile {
    border-bottom: 0;
    max-height: 0;
    opacity: 0;
    overflow-y: auto;
    padding: 0;
    position: fixed;
    top: 0;
    visibility: hidden;
    z-index: 1
}

.site-header.header--mobile,
.site-header.header--mobile.-is-open {
    -webkit-transition: opacity .5s, visibility 0s, max-height 0s;
    transition: opacity .5s, visibility 0s, max-height 0s
}

.site-header.header--mobile.-is-open {
    background: #292d30;
    display: block;
    height: 100vh;
    max-height: 100%;
    opacity: 1;
    visibility: visible;
    width: 100vw;
    z-index: 99999
}

.site-header.header--mobile .header--mobile-top {
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center
}

.site-header.header--mobile .header--mobile-top .site-branding {
    padding: 14px 25px
}

@media (min-width:768px) {
    .site-header.header--mobile .header--mobile-top .site-branding {
        padding: 24px 30px
    }
}



.no-results .content-width,
.not-found .content-width {
    align-items: center
}

.no-results .content-width,
.not-found .content-width,
.site-content {
    display: flex;

    flex-direction: column
}

.site-content {
    margin-top: 0
}

@media (min-width:768px) {
    .site-content {
        margin-top: 0
    }
}

@media (min-width:1024px) {
    .site-content {
        margin-top: 0
    }
}

.no-results {
    padding: 4em 0
}

.admin-bar .site-content {

}

.section {
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.container-i {
    margin-left: auto;
    margin-right: auto;
    max-width: 80%;
    width: 80%
}

@media (min-width:1024px) {
    .container-i {
        max-width: 96%;
        width: 96%
    }
}

.order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
}

.border-bottom {
    border-bottom: 1px solid #eee
}

.header--module {
    width: 100%;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    justify-content: flex-start;
    min-height: 90px
}

.header--module h1 {
    font-size: 55px
}

@media (min-width:768px) {
    .header--module h1 {
        font-size: 62px
    }
}

.header--module h2 {
    font-size: 50px
}

.header--module .header__title {
    font-size: 40px;
    letter-spacing: 1px;
    line-height: 1;
    margin: 0 auto;
    padding: 18px 15px 13px;
    text-align: left;
    text-transform: uppercase;
    width: 100%
}

@media (min-width:768px) {
    .header--module .header__title {
        font-size: 50px;
        letter-spacing: 1px;
        line-height: 1;
        margin: 0;
        padding: 20px 30px 23px
    }
}

.header--module .header__description {
    display: none
}

@media (min-width:1024px) {
    .header--module .header__description {
        display: inline-block;
        font-size: 18px;
        line-height: 1.33;
        margin-bottom: 0;
        margin-left: 30px;
        width: 45%
    }
}

.header--module .subnav__aside {
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    align-items: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 20px 0 0
}

@media (min-width:1024px) {
    .header--module .subnav__aside {
        padding: 0 30px 0 60px
    }
}

.header--module .subnav__aside .btn--search {
    height: 27px;
    margin-left: 0;
    margin-right: 20px;
    width: 27px
}

@media (min-width:1024px) {
    .header--module .subnav__aside .btn--search {
        height: 17px;
        margin-left: 30px;
        margin-right: 0;
        width: 17px
    }
}

.header--module .subnav__aside .btn--cta {
    min-width: 10px;
    white-space: nowrap
}

@media (min-width:1024px) {
    .header--module .subnav__aside .btn--cta {
        min-width: 170px
    }
}

.site-content .content-container {
    margin: 0 auto;
    max-width: 85%;
    padding: 75px 0 50px
}

@media (min-width:1024px) {
    .site-content .content-container {
        max-width: 75%;
        padding: 75px 0
    }
}

.site-content .content-container p {
    font-size: 21px
}

.site-content .content-container h1 {
    font-size: 2.78em;
    line-height: 1.01em;
    margin: 0 auto;
    max-width: 24em;
    padding: .5em 1em;
    text-transform: uppercase
}

.site-content .img-large-bg-page .content-width {
    max-width: 100%
}

@media (min-width:1024px) {
    .site-content .img-large-bg-page .content-width {
        max-width: 95%;
        padding: 0
    }
}

.site-content .img-large-bg-page .content-width h1 {
    font-size: 2.7em;
    line-height: 1em;
    margin: 0 auto;
    max-width: 90%;
    padding: .5em 0;
}

@media (min-width:1024px) {
    .site-content .img-large-bg-page .content-width h1 {
        max-width: 90%;
        padding: .5em 1em
    }
}

.site-content .img-large-bg-page .content-width .entry-content {
    margin: 4em 0
}

.img-large-bg-page .img-bg-page-header {
    display: flex;
    height: 30vw;
    min-height: 800px;
    position: relative;
    justify-content: center;
    align-items: center;
    min-height: 500px
}

@media (min-width:1024px) {
    .img-large-bg-page .img-bg-page-header {
        height: 40vw;
        max-height: 700px
    }
}

.img-large-bg-page .img-bg-page-header:before {
    background: rgba(0, 0, 0, .24);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.img-large-bg-page .img-bg-page-header .bg-img {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 35%;
    object-position: 50% 35%;
    position: absolute;
    right: 0;
    width: 100%;
    z-index: -1
}

.img-large-bg-page .img-bg-page-header .page-title {
    color: #fff;
    font-size: 35px;
    font-weight: 500;
    text-transform: capitalize;
    z-index: 2
}

@media (min-width:1024px) {
    .img-large-bg-page .img-bg-page-header .page-title {
        font-size: 38px
    }
}

@media (min-width:1200px) {
    .img-large-bg-page .img-bg-page-header .page-title {
        font-size: 41px
    }
}

.img-large-bg-page h3 {
    letter-spacing: 1px;
    line-height: 1.4em;
    padding-bottom: 10px;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 39px;
}

.img-large-bg-page p {
    font-size: 23px;
    letter-spacing: .2px;
}

@media (min-width: 1024px) {
	.img-large-bg-page p {
		font-size: 24px;
		line-height: 1.5;
	}
}

.img-large-bg-page .leaders-header {
    margion-bottom: 2em
}

figure {
    margin: 0
}

.page_intro {
    padding: 90px 0;
    position: relative
}

@media (min-width:1024px) {
    .page_intro {
        padding: 5em 0
    }
    .page_intro .restraint {
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between
    }
}

.page_intro h1 {
    font-size: 2em;
    line-height: 1em;
    margin-bottom: 30px;
    z-index: 2
}

@media (min-width:1024px) {
    .page_intro h1 {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        text-align: left;
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        line-height: 1.01em;
        padding-right: 10%;
        width: 38%
    }
    .page_intro .copy {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        -ms-flex: auto;
        flex: auto;
        font-size: 21px;
        font-size: 2.1rem;
        width: 65%
    }
}

.page_intro .copy p {
    font-size: 22px;
    margin-bottom: 1.5rem
}

@media (min-width:1024px) {
    .page_intro .copy p {
        margin-bottom: 2rem
    }
}

.page_intro .copy p:last-of-type {
    margin-bottom: 0
}

.restraint {
    margin: 0 auto;
    max-width: 95%;
    padding: 0 30px;
    text-align: center
}

@media (min-width:1024px) {
    .restraint {
        max-width: 90%;
        text-align: left
    }
}

@media (min-width:1440px) {
    .restraint {
        max-width: 80%
    }
}

@media (min-width:900px) and (max-width:1200px) {
    .restraint {
        padding: 0 3%
    }
}

.featured-posts-section {
    background-color: #202129;
    color: #fff;
    padding: 80px 0
}

@media (min-width:1024px) {
    .featured-posts-section {
        padding: 100px 0
    }
}

.featured-posts-section h2 {
    text-align: center
}

@media (min-width:1024px) {
    .featured-posts-section h2 {
        text-align: left
    }
}

.featured-posts-section h3 {
    font-size: 36px;
    font-weight: 400;
    letter-spacing: 0;
    margin-bottom: 30px;
    text-align: center;
    text-transform: capitalize
}

@media (min-width:1024px) {
    .featured-posts-section h3 {
        text-align: left
    }
}

.featured-posts-section .featured-grid-features {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 30px;
    justify-content: center;
    padding: 0 20px
}

@media (min-width:1024px) {
    .featured-posts-section .featured-grid-features {
        grid-template-columns: repeat(2, 1fr);
        padding: 0
    }
}

.featured-posts-section .featured-grid-features h3 {
    font-weight: 300;
    padding: 30px 0;
    text-transform: capitalize
}

.featured-posts-section .featured-grid-features img.featured-post-img {
    height: 450px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

@media (min-width:1024px) {
    .featured-posts-section .featured-grid-features img.featured-post-img {
        height: 43vw;
        max-height: 500px
    }
}

@media (min-width:1440px) {
    .featured-posts-section .featured-grid-features img.featured-post-img {
        height: 43vw;
        max-height: 500px
    }
}

.featured-posts-section .featured-grid-features h4 {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 2px;
    padding: 20px 0 0;
    text-transform: uppercase
}

.featured-posts-section .container {
    padding: 0 20px;
    width: 100%
}

@media (min-width:1024px) {
    .featured-posts-section .container {
        max-width: 85%;
        padding: 0
    }
}

.section-wrapper {
    margin: 0 auto;
    padding: 3em 0 0;
    text-align: center
}

@media (min-width:1024px) {
    .section-wrapper {
        margin: 0;
        max-width: 88%;
        padding: 3.5em 0 0;
        text-align: left
    }
}

.sticky-bg-wrap {
    height: 100%;
    position: relative;
    width: 100%
}

.sticky-bg-wrap .page-content {
    background-color: #fff;
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    width: 100%
}

@media (min-width:1024px) {
    .sticky-bg-wrap .page-content {
        margin-top: 27rem;
        max-width: 1300px
    }
}

@media (min-width:1200px) {
    .sticky-bg-wrap .page-content {
        max-width: 1190px
    }
}

@media (min-width:1440px) {
    .sticky-bg-wrap .page-content {
        max-width: 1440px
    }
}

@media (min-width:1600px) {
    .sticky-bg-wrap .page-content {
        max-width: 1600px
    }
}

.sticky-bg-wrap .page-content .page {
    padding: 4rem 0 0
}

@media (min-width:1024px) {
    .sticky-bg-wrap .page-content .page {
        padding-left: 0;
        padding-right: 0
    }
}

.sticky-bg-wrap .page-content .page .content-width {
    padding-left: 2rem;
    padding-right: 2rem
}

@media (min-width:1024px) {
    .sticky-bg-wrap .page-content .page .content-width {
        padding-left: 0;
        padding-right: 0
    }
}

.sticky-bg-wrap .page-content .page h2 {
    font-size: 40px;
    letter-spacing: .5px;
    line-height: 42px;
    margin-bottom: 30px
}

@media (min-width:768px) {
    .sticky-bg-wrap .page-content .page h2 {
        font-size: 45px
    }
}

.sticky-bg-wrap .page-content .page p {
    font-size: 21px;
    margin-bottom: 20px
}

.main-hero {
    background-position: 50% 50%;
    background-size: cover;
    min-height: 635px;
    width: 100%
}

@media (min-width:915px) {
    .main-hero {
        background-position: 50%;
        min-height: 62vw
    }
}

@media (min-width:1200px) {
    .main-hero {
        min-height: 49vw
    }
}

.main-hero .hero-content {
    display: flex;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;

    flex-direction: column;
    margin-top: 5vw;
    max-width: 475px;
    padding: 4em 1.4em
}

@media (min-width:768px) {
    .main-hero .hero-content {
        max-width: 540px;
        padding: 4em 3em
    }
}

@media (min-width:1024px) {
    .main-hero .hero-content {
        margin-top: 6.5vw;
        padding: 3em 0 0 5.5em
    }
}

@media (min-width:1440px) {
    .main-hero .hero-content {
        max-width: 650px;
        padding: 3em 0 0 6.5em
    }
}

.main-hero .hero-content h1 {
    font-size: 35px;
    line-height: 1.04em;
    margin-bottom: 20px
}

@media (min-width:1200px) {
    .main-hero .hero-content h1 {
        font-size: 40px
    }
}

@media (min-width:1440px) {
    .main-hero .hero-content h1 {
        font-size: 47px
    }
}

.main-hero .hero-content p {
    font-size: 22px;
    margin-bottom: 30px
}

.main-content {
    width: 100%
}

@media (min-width:1200px) {
    .main-content {
        min-height: 49vw
    }
}

.main-content .hero-content {
    display: flex;
    position: relative;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    background-color: #000;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 4em 1.7em
}

@media (min-width:768px) {
    .main-content .hero-content {
        background-color: transparent;
        max-width: 550px;
        padding: 3.5em 3em 0;
        position: absolute;
        top: 100px
    }
}

@media (min-width:1024px) {
    .main-content .hero-content {
        margin-top: 3.5vw;
        padding: 1em 0 0 5.5em
    }
}

@media (min-width:1440px) {
    .main-content .hero-content {
        max-width: 650px;
        padding: 3em 0 0 6.5em
    }
}

.main-content .hero-content h1 {
    color: #fff;
    font-size: 35px;
    line-height: 1.04em;
    margin-bottom: 20px;
    text-align: center
}

@media (min-width:768px) {
    .main-content .hero-content h1 {
        color: #000;
        font-size: 40px;
        text-align: left
    }
}

@media (min-width:1440px) {
    .main-content .hero-content h1 {
        font-size: 47px
    }
}

.main-content .hero-content p {
    color: #fff;
    font-size: 22px;
    margin-bottom: 30px;
    text-align: center
}

@media (min-width:768px) {
    .main-content .hero-content p {
        color: #000;
        text-align: left
    }
}

.main-content figure .hero {
    position: relative
}

.main-content figure img {
    height: 320px;
    max-height: 600px;
    min-height: 49vw;

    object-fit: cover;
    -o-object-position: 50% 20%;
    object-position: 50% 20%;
    width: 100%
}

@media (min-width:420px) {
    .main-content figure img {
        height: 500px
    }
}

.home_video_hero {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    color: #fff;
    height: 650px;
    overflow: hidden;
    padding: 20px;
    text-align: center;
    width: 100%;
    z-index: 2
}

@media (min-width:1024px) {
    .home_video_hero {
        height: 80vh;
        min-height: 750px
    }
}

.home_video_hero h1 {
    bottom: 15%;
    font-family: NeueHaasGroteskRoman, HelveticaNeueLT, arial, sans-serif;
    font-size: 35px;
    font-weight: 300;
    font-weight: 400;
    letter-spacing: .5px;
    line-height: 1.3;
    padding: 0 60px;
    position: absolute;
    text-align: center;
    z-index: 3
}

@media (min-width:1024px) {
    .home_video_hero h1 {
        bottom: 10%;
        font-size: 35px;
        padding: 0;
        text-align: center
    }
}

@media (min-width:1200px) {
    .home_video_hero h1 {
        font-size: 38px;
        left: 5%
    }
}

@media (min-width:1280px) {
    .home_video_hero h1 {
        text-align: left
    }
}

@media (min-width:1440px) {
    .home_video_hero h1 {
        font-size: 40px
    }
}

.home_video_hero video {
    height: 100%;
    left: 50%;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 0
}

.home_video_hero:before {
    -webkit-animation: fadeOverlay 1.2s ease-out forwards;
    animation: fadeOverlay 1.2s ease-out forwards;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .4)), to(transparent));
    background: linear-gradient(0deg, rgba(0, 0, 0, .4), transparent);
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    width: 100%;
    z-index: 1
}

@-webkit-keyframes fadeOverlay {
    to {
        opacity: 1
    }
}

@keyframes fadeOverlay {
    to {
        opacity: 1
    }
}

.container-wh {
    margin: 0 auto;
    max-width: 95%;
    padding: 0 20px
}

.container-wh a {
    display: flex;
    height: 65px;
    justify-content: center;
    text-align: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    align-items: center;
    color: #fff;
    font-size: 11px;
    letter-spacing: 4px;
    margin: 0 auto;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .container-wh a {
        margin: 0
    }
}

.header-nav {
    background: #000;
    left: 0;
    opacity: 1;
    padding: 20px 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 1000
}

.header-nav .container-wh {
    display: flex;
    align-items: center;
    -ms-flex-pack: justify;
    gap: 20px;
    justify-content: space-between
}

.logo {
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 2px;
    width: auto;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.main--logo {
    height: auto;
    opacity: 1;
    width: 200px;
    fill: #fff
}

.logo>svg.main-logo {
    height: auto;
    width: 200px
}

.desktop-nav {
    display: none
}

@media (min-width:1024px) {
    .desktop-nav {
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        display: flex;
        flex-grow: 1;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }
}

.nav-list {
    display: flex;
    font-weight: 600;
    gap: 40px;
    list-style: none;
    margin: 0;
    padding: 0
}

.nav-list a {
    color: #fff;
    font-size: 13.5px
}

.nav-link {
    color: #000;
    cursor: pointer;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 2.35px;
    text-decoration: none;
    text-transform: uppercase;
    -webkit-transition: color .3s ease;
    transition: color .3s ease
}

.nav-link:hover {
    color: #293c3c
}

.btn-cta {
    background: var(--color-red-primary);
    display: inline-flex;
    gap: 10px;
    padding: 16px 50px;
    text-transform: uppercase;
    justify-content: center;
    align-content: center;
    align-items: center;
    border-radius: 5px;
    font-size: 12px;
    font-weight: 400;
    height: 60px;
    letter-spacing: 4px;
    text-align: center;
    text-decoration: none;
    flex-shrink: 0
}

.btn-cta,
.btn-cta:hover {
    color: #fff;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    background: var(--color-red-hover);
}

.arrow-up {
    height: 16px;
    width: 16px;
    -ms-flex-negative: 0;
    display: inline-block;
    flex-shrink: 0;
    vertical-align: middle
}
.arrow-up-top {
    height: 16px;
    width: 16px;
    -ms-flex-negative: 0;
    display: inline-block;
    flex-shrink: 0;
    vertical-align: middle
}


.btn-primary-content {
    border: 1px solid var(--color-red-primary);
    display: flex;
    justify-content: center;
    height: 70px;
    gap: 15px;
    align-content: center;
    background: var(--color-red-primary);
    align-items: center;
    width: 100%;
    color: #fff;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 3px;
    width: 360px;
    margin: 5vw auto;
}
.btn-primary-content a::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M26.595 5.826l-0.001-0.013-0.002-0.002c-0.056-0.121-0.139-0.221-0.243-0.296l-0.002-0.002c-0.022-0.017-0.046-0.034-0.072-0.049l-0.003-0.002c-0.105-0.068-0.233-0.109-0.371-0.113l-0.001-0h-14.143c-0.414 0-0.75 0.336-0.75 0.75s0.336 0.75 0.75 0.75v0h12.332l-18.52 18.519c-0.136 0.136-0.22 0.324-0.22 0.531 0 0.415 0.336 0.751 0.751 0.751 0.207 0 0.394-0.084 0.53-0.219v0l18.52-18.52v12.33c0 0.414 0.336 0.75 0.75 0.75s0.75-0.336 0.75-0.75v0-14.142c-0.001-0.099-0.021-0.193-0.057-0.279l0.002 0.005z' fill='%23fff'/></svg>");
  transition: transform 0.3s ease;
}






/* OLD MEGA MENU AND MENU 
.mobile-menu-toggle {
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    background: none;
    border: none;
    cursor: pointer;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 5px;
    z-index: 1002
}

.mobile-menu-toggle.close .hamburger-line:first-child {
    -webkit-transform: rotate(45deg) translate(5px, 5px);
    transform: rotate(45deg) translate(5px, 5px)
}

.mobile-menu-toggle.close .hamburger-line:nth-child(2) {
    -webkit-transform: rotate(-45deg) translate(4px, -4px);
    transform: rotate(-45deg) translate(4px, -4px)
}

.hamburger-line {
    background: #fff;
    height: 1px;
    margin: 3px 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    width: 25px
}



.mega-menu {
    background: #fff;
    -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, .1);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .1); 
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 70px;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
    -webkit-transition: opacity .3s ease, visibility .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, visibility .3s ease, -webkit-transform .3s ease;
    transition: opacity .3s ease, visibility .3s ease, transform .3s ease;
    transition: opacity .3s ease, visibility .3s ease, transform .3s ease, -webkit-transform .3s ease;
    visibility: hidden;
    z-index: 999
}

.mega-menu.active {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    visibility: visible
}

.mega-menu-content {
    margin: 0 auto;
    max-width: 85%;
    padding: 40px 20px
}

.mega-menu-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
    gap: 20px
}

.mega-menu-card {
    color: inherit;
    display: block;
    text-decoration: none
}

.mega-menu-card:hover .card-image img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.mega-menu-card:hover .card-overlay {
    background: rgba(0, 0, 0, .2)
}

.card-image {
    margin-bottom: 15px;
    overflow: hidden;
    position: relative;
    width: auto
}

.card-image,
.card-image img {
    height: 100%;
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease
}

.card-image img {
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.card-overlay {
    background: transparent;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: background .3s ease
}

.card-content h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 5px
}

.card-content p {
    font-size: 14px;
    margin-bottom: 10px
}

.explore-btn {
    font-size: 14px;
    font-weight: 500
}

.mobile-menu {
    background: #fff;
    bottom: 0;
    left: 0;
    overflow-y: auto;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateX(100%);
    transition: -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1), -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    z-index: 1001
}

.mobile-menu.active {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.mobile-menu-main-panel {
    background: #141414;
    color: #fff;
    height: 100%;
    -webkit-transition: -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1), -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

.mobile-menu-main-panel.subview-active {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.mobile-menu-header {
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(60, 114, 81, .122);
    padding: 25px 20px
}

.mobile-menu-header .logo {
    -webkit-filter: brightness(0) invert(1);
    filter: brightness(0) invert(1)
}

.mobile-menu-close {
    background: none;
    border: none;
    cursor: pointer;
    padding: 5px;
    stroke: #fff
}

.mobile-menu-close svg {
    display: block
}

.mobile-nav-list {
    list-style: none;
    padding: 30px
}

.mobile-nav {
    padding: 30px
}

.mobile-nav-item {
    border-bottom: 1px solid #f0f0f0;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 2.5px;
    padding: 24px 0;
    text-transform: uppercase;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
}

.mobile-nav-item::hover {
    color: #c9d3ca;
    cursor: pointer;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
}

.mobile-nav-item:last-child {
    border-bottom: none
}

.mobile-nav-item.has-submenu {
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-family: Gotham Book, HelveticaNeueLT, arial, sans-serif;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 2.5px;
    text-transform: uppercase
}

.mobile-nav-item.has-submenu span {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.caret-icon {
    margin-left: 10px
}

.mobile-nav-link {
    display: block;
    text-decoration: none
}

.mobile-nav-link.cta {
    background: #f4f4f4;
    border-radius: 4px;
    color: #0a191f;
    display: flex;
    font-size: 16px;
    letter-spacing: 2.5px;
    margin-top: 20px;
    padding: 15px 20px;
    text-transform: uppercase;
    justify-content: center;
    text-align: center;
    align-items: center;
    font-weight: 700;
    height: 65px
}

.mobile-nav-link.cta,
.mobile-nav-link.cta:hover {
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
}

.mobile-nav-link.cta:hover {
    background: #7e9185;
    color: #1f3030
}

.mobile-submenu-panel {
    background: #fff;
    height: 100%;
    left: 0;
    overflow-y: auto;
    padding-top: 0;
    position: absolute;
    top: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1);
    transition: transform .4s cubic-bezier(.23, 1, .32, 1), -webkit-transform .4s cubic-bezier(.23, 1, .32, 1);
    width: 100%
}

.mobile-submenu-panel.active {
    background: #1f2e2e;
    color: #fff;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.mobile-submenu-header {
    display: flex;
    align-items: center;
    background-color: #293c3c;
    border-bottom: 1px solid #eee;
    -webkit-columns: #fff;
    -moz-columns: #fff;
    column-count: #fff;
    padding: 25px;
    position: sticky;
    top: 0;
    z-index: 10
}

.mobile-submenu-header h4 {
    margin-left: 15px;
    width: 100%;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    font-weight: 300;
    justify-content: flex-end;
    animation-range: 0 auto;
    letter-spacing: 2px;
    text-transform: uppercase
}

.mobile-submenu-header h4,
.submenu-back-btn {
    display: flex;
    font-size: 17px
}

.submenu-back-btn {
    background: none;
    border: none;
    color: #fff;
    cursor: pointer;
    font-family: Gotham Book, HelveticaNeueLT, arial, sans-serif;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 0;
    align-items: center
}

.submenu-back-btn svg {
    margin-right: 5px
}

ul.mobile-submenu-list {
    list-style: none;
    padding: 40px
}

.mobile-submenu-list li {
    border-bottom: 1px solid #f1f1f1;
    padding: 25px 0
}

.mobile-submenu-list li:last-child {
    border-bottom: none
}

.mobile-submenu-list li a {
    color: #fff;
    display: block;
    font-size: 16px;
    font-size: 14px;
    letter-spacing: 3px;
    text-decoration: none;
    text-transform: uppercase
}


*/


.hero {
    height: 100vh;
    overflow: hidden;
    position: relative
}

.hero-swiper-container {
    height: 100%;
    position: relative;
    width: 100%
}

.swiper.hero-slider {
    height: 100%;
    width: 100%
}

.swiper-slide {
    display: flex;
    overflow: hidden;
    position: relative;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.slide-background {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1
}

.slide-image,
.slide-video {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.hero-content {
    padding-left: 60px;
    position: relative;
    z-index: 1
}

.hero-title {
    color: #fff;
    font-size: 3rem;
    font-weight: 300;
    line-height: 1.2
}

.title-line {
    display: block;
    font-family: HelveticaNeueLT, arial, helvetica, sans-serif;
    font-weight: 300;
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px)
}

.title-line.animate-in {
    -webkit-animation: fadeInUp 1s ease forwards;
    animation: fadeInUp 1s ease forwards
}

.title-line.animate-in:nth-child(2) {
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

@-webkit-keyframes fadeInUp {
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.fade-in-on-load {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: opacity .38s ease-out, -webkit-transform .38s ease-out;
    transition: opacity .38s ease-out, -webkit-transform .38s ease-out;
    transition: opacity .38s ease-out, transform .38s ease-out;
    transition: opacity .38s ease-out, transform .38s ease-out, -webkit-transform .38s ease-out
}

.fade-in-on-load.is-visible {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.swiper-button-next-hero,
.swiper-button-prev-hero {
    bottom: 30px;
    cursor: pointer;
    display: flex;
    height: 44px;
    position: absolute;
    width: 44px;
    z-index: 10;
    align-items: center;
    background-color: hsla(0, 0%, 100%, .1);
    border-radius: 50%;
    justify-content: center;
    -webkit-transition: background-color .13s ease;
    transition: background-color .13s ease
}

.swiper-button-next-hero:hover,
.swiper-button-prev-hero:hover {
    background-color: hsla(0, 0%, 100%, .3)
}

.swiper-button-next-hero svg,
.swiper-button-prev-hero svg {
    height: 24px;
    width: 24px;
    fill: #fff
}

.swiper-button-prev-hero {
    right: 90px
}

.swiper-button-next-hero {
    right: 30px
}

.content-header {
    background: #111;
    padding: 100px 20px 50px;
    color: #fff;
}

.content-header h2 {
    color: #fff;
    font-family: "SFProDisplay", HelveticaNeueLT, arial, sans-serif;
    font-size: 23px;
    font-weight: 400;
    letter-spacing: .4px;
    line-height: 1.366;
    margin: 0 auto
}

@media (min-width:1024px) {
    .content-header h2 {
        font-size: 26px;
        max-width: 90%;
        padding: 0 20px
    }
}

@media (min-width:1280px) {
    .content-header h2 {
        max-width: 85%
    }
}

.header-label {
    letter-spacing: 2px;
    margin-bottom: 10px
}

.portfolio-section {
    overflow: hidden;
    padding: 50px 0;
    position: relative
}

.section-grid {
    display: flex;
    gap: 0;
    margin: 0 auto;
    max-width: 100%
}

.image-half,
.text-half {
    flex: 1;
    margin: 0 auto;
    padding: 20px
}

.floating-container {
    overflow: hidden;
    -webkit-perspective: 670px;
    perspective: 670px;
    position: relative
}

.floating-image {
    border-radius: 0;
    height: 400px
}

.floating-text p {
    font-size: 22px;
    letter-spacing: .4px;
    line-height: 1.988
}

@media (max-width:992px) {

    .hero-title {
        font-size: 2.5rem
    }
    .hero-content {
        padding-left: 20px;
        padding-right: 20px
    }
    .swiper-button-next-hero,
    .swiper-button-prev-hero {
        bottom: 20px
    }
    .swiper-button-prev-hero {
        right: 70px
    }
    .swiper-button-next-hero {
        right: 20px
    }
    .section-grid {
        -ms-flex-direction: column;
        flex-direction: column
    }
    .image-half,
    .text-half {
        padding: 0
    }
    .floating-text h2 {
        font-size: 32px
    }
}

@media (max-width:480px) {

    .hero-title {
        font-size: 2rem
    }
    .floating-image {
        height: 300px
    }
}

.main-container {
    width: 100%
}

.content-header {
    padding: 16em 40px 13em;
    background: #111;
    position: relative;
    text-align: center;
    z-index: 10
}

.header-label {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 5px;
    margin-bottom: 40px;
    text-transform: uppercase
}

.portfolio-section {
    display: flex;
    padding: 0;
    will-change: transform, opacity
}

.portfolio-section,
.section-grid {
    width: 100%;
    align-items: center
}

.section-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    min-height: 40vw;
}

.image-half {
    height: 43vw;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.floating-container,
.floating-image {
    height: 100%;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    width: 100%;
    will-change: transform, opacity
}

.floating-image {
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    opacity: 0;
    -webkit-transform: translateY(60px) scale(1.1);
    transform: translateY(60px) scale(1.1);
    -webkit-transition: opacity .1s ease-in-out, -webkit-transform .1s ease-out;
    transition: opacity .1s ease-in-out, -webkit-transform .1s ease-out;
    transition: transform .1s ease-out, opacity .1s ease-in-out;
    transition: transform .1s ease-out, opacity .1s ease-in-out, -webkit-transform .1s ease-out
}

.text-half {
    display: flex;
    padding: 120px 10px 120px 120px;
    align-items: center;
    min-height: 43vw;
    /*min-height: 100vh;*/
}

@media (min-width:768px) {
    .text-half {
        padding: 100px
    }
}

@media (min-width:1024px) {
    .text-half {
        padding: 100px
    }
}

.text-half .floating-text {
    opacity: 0;
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    -webkit-transition: opacity .11s ease-in-out, -webkit-transform .2s ease-out;
    transition: opacity .11s ease-in-out, -webkit-transform .2s ease-out;
    transition: transform .2s ease-out, opacity .11s ease-in-out;
    transition: transform .2s ease-out, opacity .11s ease-in-out, -webkit-transform .2s ease-out;
    width: 100%;
    will-change: transform, opacity
}

@media (min-width:1024px) {
    .text-half .floating-text {
        max-width: 80%
    }
}

.text-half .floating-text h2 {
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 1px;
    margin-bottom: 20px;
    text-transform: uppercase;
    font-family: var(--font-heading-h2);
}

@media (min-width:1024px) {
    .text-half .floating-text h2 {
        font-size: 35px;
        max-width: 85%
    }
}

.text-half .floating-text a {
    height: 65px;
    letter-spacing: 4px;
    margin: 0 auto;
    width: 300px
}

@media (min-width:768px) {
    .text-half .floating-text a {
        margin: 0
    }
}

.text-half .floating-text .primary-btn {
    background: var(--color-red-primary);
    color: #fff;

    display: inline-flex;
    padding: 16px 50px;
    text-transform: uppercase;
    width: 300px;
    justify-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
    align-items: center;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 400;
    height: 60px;
    letter-spacing: 4px;
    text-align: center;
    text-decoration: none;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    gap: 15px;
    margin: 0 auto
}

.text-half .floating-text .primary-btn:hover {
    background: var(--color-red-secondary);
    color: #fff;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
}

@media (min-width:768px) {
    .text-half .floating-text .primary-btn {
        margin: 0
    }
}

.text-half .floating-text .primary-btn svg {
    stroke: #fff;
    display: inline-block;
    height: 16px;
    width: 16px;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    vertical-align: middle
}

.floating-text p {
    font-weight: 300;
    line-height: 1.33;
    margin-bottom: 30px
}

@media (max-width:768px) {
    .section-grid {
        grid-template-columns: 1fr
    }
    .image-half {
        height: 50vh;
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1
    }
    .text-half {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        margin: 0 auto;
        min-height: 50vh;
        order: 2;
        padding: 50px 30px;
        text-align: center
    }
}

@media (max-width:768px) and (min-width:915px) {
    .text-half {
        margin: 0;
        padding: 100px
    }
}

@media (max-width:768px) {
    .content-header {
        padding: 6em 40px 7em
    }
}

.mission-section {
    background-color: #293c3c;
    padding: 6.5em 2em
}

@media (min-width:1024px) {
    .mission-section {
        padding: 13em 20px
    }
}

.statement-home-container {
    font-weight: 300;
    padding: 25px
}

.featured-statement-content {
    background: var(--color-darkgray);
    opacity: 1;
    padding: 12em 30px;
    text-align: center;
    -webkit-transform: none;
    transform: none;
    transition-delay: 0s;
    transition-delay: var(--sal-delay, 0s);
    transition-duration: .51s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
    transition-timing-function: ease
}

@media (min-width: 992px) {
	.featured-statement-content {
		padding: 14em 0;
	}
}


.about-label {
    color: #fff;
    font-size: 14px;
    letter-spacing: 2.5px;
    line-height: 1.4;
    margin: 0 0 1.45rem;
    text-transform: uppercase;
    font-family: "Roboto";
    font-size: 1.7em;
    font-weight: 400;
}

.about-statement-text {
    color: #fff;
    font-family: "HelveticaNeueLT", arial, helvetica, sans-serif;
    font-size: 25px;
    font-weight: 300;
    line-height: 1.3;
    padding: 0 30px
}

@media (min-width:1024px) {
    .about-statement-text {
        font-size: 26px;
        margin: 0 auto;
        max-width: 70%;
        text-align: center
    }
}

.portfolio-container {
    margin: 0 auto;
    padding: 60px 20px;
    text-align: center;
    width: 100%
}

@media (min-width:1024px) {
    .portfolio-container {
        max-width: 85%
    }
}

.portfolio-container h2 {
    margin: 0 auto;
    padding: 30px 0;
}

@media (min-width:1024px) {
    .portfolio-container h2 {
        margin: 0;
      text-align: left;
    }
}

.portfolio-container .top-row {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 0 20px;
    gap: 0 20px;
    margin-bottom: 0
}

@media (min-width:1024px) {
    .portfolio-container .top-row {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 0 20px
    }
}

.portfolio-container .portfolio-item {
    display: flex;

    flex-direction: column;
    margin: 0 0 5.5em
}

.portfolio-container .image-wrapper {
    border-radius: 0;
    cursor: pointer;
    height: 100%;
    margin-bottom: 20px;
    min-height: 450px;
    overflow: hidden;
    position: relative;
    width: 100%
}

@media (min-width:915px) {
    .portfolio-container .image-wrapper {
        min-height: 0
    }
}

@media (min-width:1024px) {
    .portfolio-container .image-wrapper {
        min-height: 600px
    }
}

.portfolio-container .bottom-wrapper {
    height: 100%;
    margin-bottom: 0
}

.portfolio-container .features-image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transition: -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1), -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.portfolio-container .image-wrapper:hover .features-image {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.portfolio-container .portfolio-caption {
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 2px;
    line-height: 1.4;
    margin: 0;
    text-transform: uppercase;
    
}

@media (min-width:1024px) {
    .portfolio-container .portfolio-caption {
        font-size: 18px
    }
}

.portfolio-container .text-box {
    background-color: #e8e8e8;
    display: flex;
    padding: 40px;

    flex-direction: column;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
}

@media (min-width:1024px) {
    .portfolio-container .text-box {
        padding: 60px
    }
}

.portfolio-container .text-box h3 {
    font-size: 21px;
    font-weight: 500;
    letter-spacing: 5px;
    line-height: 1.2;
    margin: 0 0 20px;
    text-transform: uppercase
}

.portfolio-container .text-box p {
    font-size: 15px
}

.portfolio-container .text-box a {
    color: #111;
    display: inline-block;
    font-size: 14px;
    letter-spacing: 2px;
    padding-bottom: 3px;
    position: relative;
    text-decoration: none;
    text-transform: uppercase
}

.portfolio-container .text-box a:after {
    background-color: #111;
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    width: 100%
}

.portfolio-container .text-box a:hover:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.image-box {
    background-color: #ddd;
    cursor: pointer;
    overflow: hidden;
    position: relative
}

.bottom-image {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transition: -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1);
    transition: transform .4s cubic-bezier(.4, 0, .2, 1), -webkit-transform .4s cubic-bezier(.4, 0, .2, 1);
    width: 100%
}

.image-box:hover .bottom-image {
    -webkit-transform: scale(1.08);
    transform: scale(1.08)
}

.section-description {
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .1px;
    line-height: 1.6;
    margin: 0
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(30px);
        transform: translateY(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.anim-fade-in {
    -webkit-animation: fadeInUp .2s ease-out forwards;
    animation: fadeInUp .2s ease-out forwards;
    opacity: 0
}

.top-row .portfolio-item:first-child {
    -webkit-animation-delay: .1s;
    animation-delay: .1s
}

.top-row .portfolio-item:nth-child(2) {
    -webkit-animation-delay: .12s;
    animation-delay: .12s
}

.top-row .portfolio-item:nth-child(3) {
    -webkit-animation-delay: .26s;
    animation-delay: .26s
}

.bottom-row>div:first-child {
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.bottom-row>div:nth-child(2) {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.bottom-row>div:nth-child(3) {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.bottom-row>div:nth-child(4) {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

@media (max-width:1024px) {
    .bottom-row {
        height: 100%
    }
    .text-box {
        padding: 30px 25px
    }
    .text-box p {
        font-size: 16px
    }
    .section-description {
        font-size: 13px
    }
    .image-wrapper {
        height: 350px
    }
}

.bottom-row {
    grid-template-columns: 1fr;
    height: auto
}

.text-box {
    height: 200px;
    padding: 30px 20px
}

.image-box {
    height: 250px
}

.section-description {
    font-size: 13px
}

.image-wrapper:hover .features-image {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
}

.image-box:hover .bottom-image {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

@media (hover:none) and (pointer:coarse) {
    .image-box:hover .bottom-image,
    .image-wrapper:hover .features-image {
        -webkit-transform: none;
        transform: none
    }
    .image-wrapper:active .features-image {
        -webkit-transform: scale(1.02);
        transform: scale(1.02)
    }
    .image-box:active .bottom-image {
        -webkit-transform: scale(1.03);
        transform: scale(1.03)
    }
}

.text-box {
    height: 180px;
    padding: 25px 15px
}

.image-box {
    height: 220px
}

.image-wrapper {
    height: 400px
}

.section-description {
    font-size: 12px
}

.image-wrapper:hover .features-image {
    -webkit-transform: scale(1.02);
    transform: scale(1.02)
}

.image-box:hover .bottom-image {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
}

.parallax-hero {
    display: flex;
    min-height: 650px;
    position: relative;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    overflow: hidden;
    padding: 40px
}

@media (min-width:1024px) {
    .parallax-hero {
        max-height: 655px;
        min-height: 655px
    }
}

@media (min-width:1920px) {
    .parallax-hero {
        max-height: 760px;
        min-height: 760px
    }
}

.parallax-hero:before {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .8)), to(transparent));
    background: linear-gradient(0deg, rgba(0, 0, 0, .8), transparent);
    bottom: 0;
    content: "";
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1
}

.parallax-hero h2 {
    color: #fff;
    font-weight: 300;
    line-height: 1.2;
    margin: 0 auto;
    position: relative;
    text-transform: capitalize;
    width: 100%;
    z-index: 2
}

@media (min-width:1024px) {
    .parallax-hero h2 {
        max-width: 90%
    }
}

.hero-image {
    height: 100%;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 60%;
    object-position: 50% 60%;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.contact-section {
    background-color: var(--color-off-gray);
    color: #fff;
    padding: 80px 20px
}

.contact-section .container-full {
    margin: 0 auto;
    padding: 20px 30px;
    width: 100%
}

@media (min-width:1024px) {
    .contact-section .container-full {
        max-width: 90%
    }
}

.contact-section .container-full h1 {
    font-size: 25px;
    font-weight: 300;
    letter-spacing: 1px;
    margin-bottom: 2rem;
    padding: 20px;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .contact-section .container-full h1 {
        padding: 50px
    }
}

.contact-section .container-full h2 {
    border-bottom: 1px solid;
    font-size: 33px;
    letter-spacing: 1px;
    margin: 0 0 30px;
    padding: 0 0 10px;
    text-transform: uppercase
}

.contact-section .container-full .heading-section h3 {
    border-bottom: 1px solid #fff;
    letter-spacing: 2px;
    margin: 0 0 30px;
    padding-bottom: 3px;
    text-transform: uppercase
}

.contact-section .container-full .heading-section p {
    color: #fff;
    letter-spacing: .5px;
    line-height: 1.4;
    margin: 0 0 70px
}

.contact-section .container-full h4 {
    border-bottom: 1px solid #fff;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 3px;
    margin-bottom: 16px;
    padding-bottom: 5px;
    text-transform: uppercase
}

.contact-section .container-full a {
    color: #fff;
    display: inline-block;
    font-size: 21px;
    line-height: 1.43;
    position: relative;
    text-decoration: none
}

.contact-section .container-full a:after {
    background: #fff;
    bottom: -2px;
    content: "";
    height: 1px;
    left: 0;
    position: absolute;
    -webkit-transition: width .3s ease;
    transition: width .3s ease;
    width: 0
}

.contact-section .container-full a:hover:after {
    width: 100%
}

.wp-core-ui div.wpforms-container-full .wpforms-page-button:active .submit-form-btn,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn,
.wp-core-ui div.wpforms-container-full button[type=submit]:active .submit-form-btn,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover .submit-form-btn,
.wp-core-ui div.wpforms-container-full input[type=submit]:active .submit-form-btn,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover .submit-form-btn,
div.wpforms-container-full .wpforms-page-button:active .submit-form-btn,
div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn,
div.wpforms-container-full button[type=submit]:active .submit-form-btn,
div.wpforms-container-full button[type=submit]:hover .submit-form-btn,
div.wpforms-container-full input[type=submit]:active .submit-form-btn,
div.wpforms-container-full input[type=submit]:hover .submit-form-btn {
    background: transparent !important;
    -webkit-box-pack: justify !important;
    -ms-flex-pack: justify !important;
    border: none !important;
    border-bottom: 1px solid #fff !important;
    cursor: pointer !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    font-size: 18px !important;
    justify-content: space-between !important;
    letter-spacing: 1px !important;
    padding: 1rem 10px !important;
    width: 100% !important;
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
    gap: .5rem !important;
    height: 50px;
    margin-top: 1rem !important;
    -webkit-transition: all .3s ease !important;
    transition: all .3s ease !important
}

.wp-core-ui div.wpforms-container-full .wpforms-page-button:active .submit-form-btn:hover,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn:hover,
.wp-core-ui div.wpforms-container-full button[type=submit]:active .submit-form-btn:hover,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover .submit-form-btn:hover,
.wp-core-ui div.wpforms-container-full input[type=submit]:active .submit-form-btn:hover,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover .submit-form-btn:hover,
div.wpforms-container-full .wpforms-page-button:active .submit-form-btn:hover,
div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn:hover,
div.wpforms-container-full button[type=submit]:active .submit-form-btn:hover,
div.wpforms-container-full button[type=submit]:hover .submit-form-btn:hover,
div.wpforms-container-full input[type=submit]:active .submit-form-btn:hover,
div.wpforms-container-full input[type=submit]:hover .submit-form-btn:hover {
    background-color: transparent !important;
    color: #000 !important;
    -webkit-transition: all .3s ease !important;
    transition: all .3s ease !important
}

.wp-core-ui div.wpforms-container-full .wpforms-page-button:active .submit-form-btn svg,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn svg,
.wp-core-ui div.wpforms-container-full button[type=submit]:active .submit-form-btn svg,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover .submit-form-btn svg,
.wp-core-ui div.wpforms-container-full input[type=submit]:active .submit-form-btn svg,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover .submit-form-btn svg,
div.wpforms-container-full .wpforms-page-button:active .submit-form-btn svg,
div.wpforms-container-full .wpforms-page-button:hover .submit-form-btn svg,
div.wpforms-container-full button[type=submit]:active .submit-form-btn svg,
div.wpforms-container-full button[type=submit]:hover .submit-form-btn svg,
div.wpforms-container-full input[type=submit]:active .submit-form-btn svg,
div.wpforms-container-full input[type=submit]:hover .submit-form-btn svg {
    height: 16px !important;
    width: 16px !important
}
div.wpforms-container-full .wpforms-field.wpforms-field-checkbox.wpforms-checkbox-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-checkbox.wpforms-multiplechoice-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-checkbox.wpforms-list-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio.wpforms-checkbox-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio.wpforms-multiplechoice-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio.wpforms-list-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox.wpforms-checkbox-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox.wpforms-multiplechoice-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox.wpforms-list-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple.wpforms-checkbox-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple.wpforms-multiplechoice-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple.wpforms-list-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox.wpforms-checkbox-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox.wpforms-multiplechoice-3-columns ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox.wpforms-list-3-columns ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}


div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul li input+label {
    color: #fff !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important
}

.content-contact-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 6rem;
    gap: 6rem;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start
}

@media (min-width:1024px) {
    .content-contact-wrapper {
        grid-template-columns: repeat(2, 1fr)
    }
}

.contact-info {
    display: flex;

    flex-direction: column;
    gap: 3rem
}

.contact-title {
    color: #fff;
    font-size: 30px;
    font-weight: 400;
    letter-spacing: .05em;
    margin-bottom: 1rem;
    text-transform: uppercase
}

.address p,
.phone {
    color: #fff
}

.phone {
    margin-top: 1rem
}

.social-links {
    list-style: none;
    margin: 0;
    padding: 0
}

.social-links li {
    margin-bottom: .5rem
}

.social-links a {
    color: #fff;
    text-decoration: none;
    -webkit-transition: color .3s ease;
    transition: color .3s ease
}

.social-links a::hover {
    color: #fff
}

.contact-form {
    background: transparent
}

.contact-form h4 {
    border-bottom: 1px solid #fff;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 3px;
    margin-bottom: 16px;
    padding-bottom: 5px;
    text-transform: uppercase
}

.contact-form-group {
    margin-bottom: 2rem
}

.contact-form-group label {
    color: #fff;
    display: block;
    font-size: 15px;
    letter-spacing: 2px;
    margin-bottom: .5rem;
    text-transform: uppercase
}

.contact-form-group input,
.contact-form-group select,
.contact-form-group textarea {
    background: hsla(0, 0%, 100%, .09);
    border: none;
    border-bottom: 1px solid hsla(0, 0%, 97%, .498);
    color: #fff;
    font-size: 1rem;
    padding: 1rem 10px;
    -webkit-transition: border-color .3s ease;
    transition: border-color .3s ease;
    width: 100%
}

.contact-form-group input:focus,
.contact-form-group select:focus,
.contact-form-group textarea:focus {
    border-bottom-color: #fff;
    outline: none;
    padding: 1rem 10px
}

.contact-form-group input::-webkit-input-placeholder,
.contact-form-group textarea::-webkit-input-placeholder {
    color: #fff
}

.contact-form-group input::-moz-placeholder,
.contact-form-group textarea::-moz-placeholder {
    color: #fff
}

.contact-form-group input:-ms-input-placeholder,
.contact-form-group textarea:-ms-input-placeholder {
    color: #fff
}

.contact-form-group input::-ms-input-placeholder,
.contact-form-group textarea::-ms-input-placeholder {
    color: #fff
}

.contact-form-group input::placeholder,
.contact-form-group textarea::placeholder {
    color: #fff
}

.contact-form-group select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");
    background-position: right 0 center;
    background-repeat: no-repeat;
    background-size: 1.5em 1.5em;
    cursor: pointer;
    padding-right: 2.5rem
}

.contact-form-group select option {
    background-color: #1a1a1a;
    color: #fff
}

.contact-form-group textarea {
    min-height: 100px;
    resize: vertical
}

.submit-form-btn {
    background: transparent;
    -ms-flex-pack: justify;
    border: none;
    border-bottom: 1px solid #fff;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 18px;
    justify-content: space-between;
    letter-spacing: 1px;
    padding: 1rem 10px;
    width: 100%;
    align-items: center;
    gap: .5rem;
    margin-top: 1rem
}

.submit-form-btn,
.submit-form-btn:hover {
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.submit-form-btn:hover {
    background-color: transparent;
    color: #000
}

.submit-form-btn svg {
    height: 16px;
    width: 16px
}

.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],
.wp-core-ui div.wpforms-container-full select,
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 {
    height: 55px !important
}

.reveal-on-scroll {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: all .6s ease-out;
    transition: all .6s ease-out
}

@media (prefers-reduced-motion:no-preference) {
    .reveal-on-scroll {
        -webkit-animation: fadeInUp .8s ease forwards;
        animation: fadeInUp .8s ease forwards;
        -webkit-animation-delay: .2s;
        animation-delay: .2s;
        animation-played: paused
    }
    .reveal-on-scroll:not(.no-animation) {
        -webkit-animation-play-state: running;
        animation-play-state: running
    }
    @-webkit-keyframes fadeInUp {
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInUp {
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
}

.about-fullwidth {
    overflow: hidden;
    position: relative;
    width: 100%
}

.about-fullwidth .image-wrapper {
    height: 100%;
    position: relative;
    width: 100%
}

.about-fullwidth img.parallax-image {
    height: 100%;
    min-height: 560px;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
    width: 100%
}

@media (min-width:1024px) {
    .about-fullwidth img.parallax-image {
        height: 900px
    }
}

.about-fullwidth .full-overlay {
    background: rgba(0, 0, 0, .4);
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1
}

.about-fullwidth .fullwidth-centered {
    color: #fff;
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 2
}

.about-fullwidth .fullwidth-centered h2 {
    font-size: 2.1em;
    text-transform: capitalize;
    font-family: "SFProDisplay";
    font-weight: 400;
}

@media (min-width:1024px) {
    .about-fullwidth .fullwidth-centered h2 {
        font-size: 3.1rem
    }
}

.aboutus-content {
    background: #dcdcdc;
    color: #fff;
    overflow: hidden;
    padding: 6em 0
}

@media (min-width:1024px) {
    .aboutus-content {
        padding: 10em 0
    }
}

.aboutus-statement-container {
    display: flex;
    width: 100%;
    justify-content: center;
    margin: 0 auto;
    padding: 60px
}

@media (min-width:768px) {
    .aboutus-statement-container {
        margin: 0;
        padding: 0 140px;
        width: 80%
    }
}

.aboutus-text {
    font-size: 35px;
    line-height: 1.3;
    opacity: 0;
    text-align: center;
    -webkit-transform: translateY(60px);
    transform: translateY(60px)
}

@media (min-width:1024px) {
    .aboutus-text {
        font-size: 45px;
        max-width: 55%;
        text-align: left
    }
}

@media (min-width:900px) {
    .aboutus-text {
        max-width: 90%
    }
}

.aboutus-callout {
    color: #fff;
    display: inline-block;
    font-family: "SFProDisplay", arial, sans-serif;
    font-weight: 400;
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px)
}

.hero-section {
    padding: 60px 0 0
}

@media (min-width:1024px) {
    .hero-section {
        padding: 120px 0 0
    }
}

.hero-section .hero-title {
    font-size: 48px;
    font-weight: 400;
    margin-bottom: 40px
}

.stats-section {
    padding: 120px 0
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 60px;
    gap: 60px;
    padding: 30px
}

.stat-item {
    text-align: left
}

.stat-number {
    color: #fff;
    font-size: 40px;
    font-weight: 600;
    margin-bottom: 10px;
    text-align: center
}

@media (min-width:1024px) {
    .stat-number {
        font-size: 43px
    }
}

@media (min-width:1280px) {
    .stat-number {
        font-size: 50px
    }
}

.stat-label {
    font-size: 16px;
    letter-spacing: 1px;
    text-align: center;
    text-transform: uppercase
}

.about--content-wrapper {
    background: #2f2f2f;
    color: #fff;
    padding: 5em 0
}

.mission-text {
    font-size: 42px;
    font-weight: 100;
    line-height: 1.3;
    max-width: 78%;
    text-align: left
}

@media (min-width:1024px) {
    .mission-text {
        max-width: 70%
    }
}

.mission-callout {
    color: #c2d8c0
}

.leaders-section {
    padding: 5em 40px 6em
}

@media (min-width:1024px) {
    .leaders-section {
        padding: 7em 30px 10em
    }
}

.leaders-section h3 {
    border-bottom: 1px solid #ddd;
    font-family: "HelveticaNeueLT", arial, helvetica, sans-serif;
    font-size: 34px;
    font-weight: 400;
    letter-spacing: 1px;
    margin: 0 0 1em;
    padding-bottom: 2px;
    text-transform: capitalize
}

@media (min-width:1024px) {
    .leaders-section h3 {
        padding: 0 0 20px
    }
}

.leaders-section .container {
    padding: 0 20px;
    width: 100%
}

@media (min-width:1024px) {
    .leaders-section .container {
        max-width: 85%;
        padding: 0
    }
}

.leaders-header {
    isplay: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px
}

.see-team-link {
    font-size: 14px;
    text-decoration: none
}

.leaders-grid {
    display: flex;

    flex-direction: column;
    gap: 50px 0
}

@media (min-width:1024px) {
    .leaders-grid {
        flex-direction: row;
        gap: 20px
    }
}

.leader-card {
    display: grid;
    grid-template-columns: 1fr 5fr;
    align-items: start;
    grid-gap: 0;
    gap: 0
}

@media (min-width:1024px) {
    .leader-card {
        gap: 70px
    }
}

.leader-card img {
    display: none;
    height: 550px;
    margin-bottom: 20px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.leader-card h4 {
    font-size: 28px;
    margin: 0;
    padding-right: 20px;
    text-align: left
}

.leader-card h5 {
    font-size: 22px;
    letter-spacing: 1px;
    text-transform: uppercase
}

.leader-card p {
    margin: 0
}

.leader-card .team-content {
    display: flex;

    flex-direction: column;
    gap: 10px 0
}

.about-section {
    background: #111;
    color: #fff;
    padding: 80px 0
}

.about-posts-section {
    background-color: #313131;
    color: #fff;
    padding: 80px 0
}

.about-posts-section h2 {
    text-align: center
}

@media (min-width:1024px) {
    .leaders-grid {
        -ms-flex-direction: column;
        flex-direction: column
    }
    .about-posts-section h2 {
        text-align: left
    }
}

@media (max-width:768px) {
    .leader-card {
        grid-template-columns: 1fr
    }
    .leader-card h3 {
        border-right: none;
        margin-bottom: 10px;
        padding-right: 0;
        text-align: left
    }
}

.fade-in {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .8s ease, -webkit-transform .8s ease;
    transition: opacity .8s ease, transform .8s ease;
    transition: opacity .8s ease, transform .8s ease, -webkit-transform .8s ease
}

.fade-in.visible {
    opacity: 1;
    transform: translateY(0)
}

@media (max-width:768px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (max-width:480px) {
    .stats-grid {
        grid-template-columns: 1fr
    }
}

.residences-properties-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 20px;
    margin: 3em auto;
    padding: 0 20px;
    width: 100%
}

@media (min-width:1024px) {
    .residences-properties-grid {
        grid-template-columns: repeat(2, 1fr);
        max-width: 95%;
        padding: 0
    }
}

@media (min-width:1200px) {
    .residences-properties-grid {
        grid-template-columns: repeat(3, 1fr);
        max-width: 90%
    }
}

.residences-properties-grid .residence-item {
    display: block;
    padding-bottom: 4em
}

.residences-properties-grid .residence-item img {
    height: 100%;
    margin-bottom: 20px;
    max-height: 350px;
    width: 100%
}

.residences-properties-grid .residence-item h3 {
    font-family: "Gotham Book", "HelveticaNeueLT", arial, sans-serif;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 0;
    padding: 0;
    text-transform: uppercase
}

.residences-properties-grid .residence-item h4 {
    border-bottom: 1px solid #ddd;
    font-family: "Gotham Book", "HelveticaNeueLT", arial, sans-serif;
    font-size: 18px;
    margin-bottom: 25px;
    padding-bottom: 15px;
    text-transform: capitalize
}

.residences-properties-grid .residence-item p {
    font-size: 18px;
    margin: 0;
    padding: 0
}

.residences-properties-grid .residence-item .card-btn-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 10px
}

@media (min-width:1200px) {
    .residences-properties-grid .residence-item .card-btn-wrapper {
        grid-template-columns: repeat(2, 1fr)
    }
}

.residences-properties-grid .residence-item .card-btn-wrapper a {
    background: #293c3c;
    display: flex;
    height: 65px;
    justify-content: center;
    text-align: center;
    align-items: center;
    border-radius: 6px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 2px;
    margin: 0;
    min-width: 200px;
    padding: 0 10px;
    text-transform: uppercase
}

.resident-login-page .login-button {
    background: #000;
    border-radius: 3px;
    color: #fff;
    display: inline-block;
    font-weight: 700;
    margin-top: 1rem;
    padding: 1rem 4rem;
    text-decoration: none
}

.resident-login-page .container-login-portal {
    margin: 5em auto;
    padding: 0 20px;
    width: 100%
}

@media (min-width:1024px) {
    .resident-login-page .container-login-portal {
        max-width: 90%
    }
}

.resident-login-page .resident-login-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-gap: 0 100px
}

@media (min-width:1024px) {
    .resident-login-page .resident-login-grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

.resident-login-page .resident-login-grid .portal-column-left h2 {
    border-bottom: 1px solid #ddd;
    margin-bottom: 20px;
    padding-bottom: 3px
}

.resident-login-page .resident-login-grid .portal-column-left p {
    padding-bottom: .9em
}

.resident-login-page .resident-login-grid .sidebar-portal h3 {
    border-bottom: 1px solid #ddd;
    font-family: "Gotham Book", "HelveticaNeueLT", arial, sans-serif;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 3px;
    margin-bottom: 15px;
    padding-bottom: 5px;
    text-transform: uppercase
}

.resident-login-page .resident-login-grid .sidebar-portal p {
    font-size: 18px;
    line-height: 1.5
}

.resident-login-page .resident-login-grid .resident-login-sidebar {
    display: flex;
    gap: 50px;
    justify-content: flex-start
}

.resident-login-page .resident-login-grid .resident-login-sidebar img {
    max-width: 150px;
    padding-top: 1em;
    width: 100%
}

.resident-buttons-container {

    flex-direction: column;
    max-width: 400px
}

.resident-buttons-container,
.resident-buttons-container .btn-resident-login {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%
}

.resident-buttons-container .btn-resident-login {
    background-color: #fff;
    border: none;
    border-radius: 4px;
    color: #fff;
    font-family: GothamLight, HelveticaNeueLT, arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    height: 62px;
    justify-content: center;
    letter-spacing: 2px;
    min-width: 350px;
    padding: 12px 20px;
    text-decoration: none;
    text-transform: uppercase;
    transition: all .5s ease-in-out
}

.resident-buttons-container .btn-resident-login::hover {
    background: transparent;
    border: 1px solid #d3d3d3;
    color: #d3d3d3;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out
}

.resident-buttons-container .btn-resident-login svg {
    height: 20px;
    width: 20px
}

.account-information {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
    margin-top: 2em;
    padding-top: 30px
}



.grid--investments {
    display: grid;
    margin: 3em auto;
    width: 100%;
    grid-gap: 30px;
    gap: 30px;
    padding: 15px
}

@media (min-width:1024px) {
    .grid--investments {
        margin:5em auto;
        max-width: 85%
    }
}

.grid--investments .investments-row {
    display: grid;
    grid-gap: 15px;
    gap: 15px;
    width: 100%
}

.grid--investments .investments-row.row-0 {
    grid-template-columns:45% 55%;
}

.grid--investments .investments-row.row-1 {
    grid-template-columns: 33.33% 33.33% 33.33%
}

.grid--investments .investments-row.row-2 {
    grid-template-columns: 33.33% 66.66%
}

.grid--investments .investments-row.row-3 {
    grid-template-columns: 50% 50%
}

.grid--investments .investments-row.row-4 {
    grid-template-columns: 25% 50% 25%
}

.grid--investments .investments-row:not(.row-0):not(.row-1):not(.row-2):not(.row-3):not(.row-4) {
    grid-template-columns: 33.33% 33.33% 33.33%
}

@media (max-width:767px) {
    .grid--investments .investments-row {
        grid-template-columns: 1fr !important
    }
}

.grid--investments .investments-item {
    display: flex;

    flex-direction: column
}

.grid--investments .investments-item .investments-link {
    display: block;
    width: 100%
}

.grid--investments .investments-item .investments-link .investments-image-wrapper {
    height: 400px;
    overflow: hidden;
    position: relative
}

.grid--investments .investments-item .investments-link .investments-image-wrapper,
.grid--investments .investments-item .investments-link .investments-image-wrapper img {
    -webkit-transition: -webkit-transform .5s ease;
    transition: -webkit-transform .5s ease;
    transition: transform .5s ease;
    transition: transform .5s ease, -webkit-transform .5s ease;
    width: 100%
}

.grid--investments .investments-item .investments-link .investments-image-wrapper img {
    display: block;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none
}

.grid--investments .investments-item .investments-link .investments-image-wrapper:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.grid--investments .investments-item .investments-link .investments-image-wrapper:after {
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .4)), color-stop(60%, transparent));
    background: linear-gradient(0deg, rgba(0, 0, 0, .4), transparent 60%);
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    pointer-events: none;
    position: absolute;
    width: 100%;
    z-index: 2
}

@media (min-width:1024px) {
    .grid--investments .investments-item .investments-link .investments-image-wrapper {
        height: max(575px, min(20vw, 600px))
    }
}

@media (min-width:1280px) {
    .grid--investments .investments-item .investments-link .investments-image-wrapper {
        height: max(675px, min(20vw, 600px))
    }
}

.grid--investments .investments-item .investments-caption {
    margin-bottom: 2rem;
    margin-top: 1rem;
    padding: 0 .5rem
}

.grid--investments .investments-item .investments-caption .caption-inner .investments-title {
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 1.5px;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .grid--investments .investments-item .investments-caption .caption-inner .investments-title {
        font-size: 16px
    }
}

.grid--investments .investments-item .investments-caption .caption-inner .investments-location {
    font-size: .85rem;
    letter-spacing: 1px;
    margin-top: .25rem;
    text-transform: capitalize
}

.project-block {
    margin: 2em auto 4em;
    padding: 30px;
    width: 100%
}

@media (min-width:1024px) {
    .project-block {
        max-width: 90%
    }
}

.property-overview {
    margin-bottom: 3em;
    width: 100%
}

@media (min-width:915px) {
    .property-overview {
        margin-bottom: 0
    }
}

.property-overview h2 {
    border-bottom: 1px solid #ddd;
    font-family: Gotham Book, HelveticaNeueLT, arial, sans-serif;
    font-size: 26px;
    letter-spacing: 1.5px;
    line-height: 1.39;
    margin-bottom: 1.6em;
    padding-bottom: 20px;
    text-align: center;
    text-transform: uppercase
}

@media (min-width:915px) {
    .property-overview h2 {
        text-align: left
    }
}

.property-overview h3 {
    font-size: 25px;
    letter-spacing: 1px;
    padding: 10px 0 0;
    text-transform: uppercase
}

.property-overview p {
    margin: 0 0 20px
}

.property-meta {
    width: 100%
}

.property-meta .meta-item {
    border-bottom: 1px solid #ddd;
    display: grid;
    grid-template-columns: 1fr;
    padding: 1.5em 0;
    text-align: left
}

@media (min-width:1200px) {
    .property-meta .meta-item {
        grid-template-columns: 1fr 50%
    }
}

@media (min-width:1440px) {
    .property-meta .meta-item {
        grid-template-columns: 1fr 50%
    }
}

.property-meta .meta-label {
    font-family: Gotham Book, HelveticaNeueLT, arial, sans-serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 1.7px;
    margin-bottom: .5em;
    text-align: left;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .property-meta .meta-label {
        margin-bottom: 0
    }
}

.property-meta .meta-info {
    font-size: 20px;
    letter-spacing: .4px;
    line-height: 1.4;
    text-align: left
}

@media (min-width:1200px) {
    .property-meta .meta-info {
        text-align: right
    }
}

.project-block__inner {
    display: grid;
    grid-template-columns: 1fr
}

@media (min-width:915px) {
    .project-block__inner {
        grid-gap: 0 100px;
        grid-template-columns: 1fr 30%
    }
}

@media (min-width:1440px) {
    .project-block__inner {
        grid-gap: 0 150px;
        grid-template-columns: 1fr 36%
    }
}

.investments-diagram-container {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 auto;
    padding: 1.5em 0 4em
}

@media (min-width:1200px) {
    .investments-diagram-container {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 20px;
        padding: 20px
    }
}

.investments-diagram-container .investment-item-box {
    border: 1px solid #ddd;
    display: flex;
    padding: 20px;
    text-align: center;

    flex-direction: column;
    align-items: center
}

.investments-diagram-container .investment-item {
    height: auto;
    margin-bottom: 15px;
    max-width: 300px;
    width: 100%
}

.investments-diagram-container .investment-item-box {
    margin: 1.1em 0
}

.investments-diagram-container .investment-item-box h3 {
    font-family: Gotham Book, HelveticaNeueLT, arial, sans-serif;
    font-size: 19px;
    font-weight: 600;
    letter-spacing: 1.5px;
    margin: 0;
    padding-bottom: 10px;
    text-transform: uppercase
}

.adjustable-image-content-wrapper h3 {
    font-size: 22px;
    letter-spacing: 1px;
    padding: 10px 0 0;
    text-transform: uppercase
}

.adjustable-image-content-wrapper p {
    font-size: 15px
}

.flexible-media-blocks {
    margin: 1.5em 0 3em;
    text-align: center
}

@media (min-width:1024px) {
    .flexible-media-blocks {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 0 20px
    }
}

.flexible-media-blocks img {
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    padding: 30px
}

.container--column--content {
    display: flex;
    margin: 0 auto;
    width: 100%;
    justify-content: center
}

@media (min-width:1024px) {
    .container--column--content {
        max-width: 90%
    }
}

.container--column--content img {
    padding: 0 0 1.5em;
    width: 100%
}

.container--media-content p {
    font-size: 18px
}

.container--text-content p {
    margin: 0;
    padding: 2em 0 0;
    text-align: center
}

@media (min-width:1024px) {
    .container--text-content p {
        text-align: left
    }
}

.flexible-column-images {
    border-bottom: 1px solid #ddd;
    border-top: 1px solid #ddd;
    display: grid;
    grid-template-columns: 1fr;
    margin-top: 30px;
    padding: 35px 0
}

@media (min-width:1024px) {
    .flexible-column-images {
        grid-template-columns: repeat(2, 1fr)
    }
}

.flexible-media-blocks {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 auto;
    padding: 0
}

@media (min-width:915px) {
    .flexible-media-blocks {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 40px
    }
}

@media (min-width:1200px) {
    .flexible-media-blocks {
        grid-template-columns: repeat(3, 1fr)
    }
}

.flexible-media-blocks img {
    border: 1px solid #ddd
}

.flexible-media-blocks h3 {
    font-family: GothamLight, HelveticaNeueLT, arial, sans-serif;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 1.7px;
    padding: 20px 0 5px;
    text-transform: uppercase
}

.site-footer {
    -webkit-animation: background 15s ease-in-out infinite;
    animation: background 15s ease-in-out infinite;
    background: #000;
    position: relative;
    z-index: 10
}

.site-footer .content-width {
    margin: 0 auto 30px;
    max-width: 100%;
    background: #111;
    padding: 0;
    width: 100%
}

.site-footer .footer-top {
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 4em 1.5em 3em
}



@media (min-width:1200px) {
    .site-footer .footer-top {
        padding: 4em 60px 1em
    }
}

.site-footer .footer-top h1,
.site-footer .footer-top h2 {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 3px;
    line-height: 1.1;
    text-transform: uppercase;
    border-bottom: 1px solid #ffffff70;
    padding-bottom: 5px;
    margin: 0 0 20px 0;
}

@media (min-width:1024px) {
    .site-footer .footer-top h1,
    .site-footer .footer-top h2 {
        font-size: 18px
    }
}

.site-footer .footer-top .column {
    color: #fff;
    display: flex;
    position: relative;
    width: 100%;
    justify-content: center;

    flex-direction: column;
    text-align: center
}

@media (min-width:1024px) {
    .site-footer .footer-top .column {
        text-align: left;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.site-footer .footer-top .column:first-of-type {
    display: flex;
    margin-bottom: 30px;
    justify-content: center
}

@media (min-width:1024px) {
    .site-footer .footer-top .column:first-of-type {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start
    }
}

.site-footer .footer-top .column:nth-child(2) {
    display: flex;
    margin-bottom: 20px;
    text-align: center;

    flex-direction: column
}

@media (min-width:1024px) {
    .site-footer .footer-top .column:nth-child(2) {
        margin-bottom: 0;
        text-align: left
    }
}

.site-footer .footer-top .column:last-child {
    margin-bottom: 0
}

@media (min-width:1024px) {
    .site-footer .footer-top .column {
        padding: 1%;
        width: 24.333332%
    }
}

.site-footer .footer-top .column p {
    font-size: 19px;
    letter-spacing: .5px;
    padding-bottom: 5px;
    line-height: 1.64em;
}
.site-footer .footer-top .connect p {
	
}

.site-footer .footer-top .column img {
    max-width: 250px
}

.site-footer .footer-top .column .logo-main {
    display: flex;
    gap: 10px
}

.site-footer .footer-top .column .logo-main .logo-res,
.site-footer .footer-top .column .logo-main .logo-main {
    width: 100px
}

.site-footer .footer-top .column label {
    display: none
}

.site-footer .footer-top .column a.logo-footer {
    display: flex;
    justify-content: center;
    border-bottom: none;
}

.site-footer .footer-top .connect a {
	border-bottom: 1px solid #fff;
	padding-bottom: 3px;
	display: inline;
}

.logo-footer .main--logo {
	width: 250px;
}


@media (min-width:1024px) {
    .site-footer .footer-top .column a.logo-footer {
        justify-content: flex-start
    }
}

.site-footer .footer-top .social-menu {
    margin-top: 30px
}

.site-footer .footer-top .social-menu .menu {
    color: #fff;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    align-items: center
}

.site-footer .footer-top .social-menu .menu .menu-item {
    padding: 0 10px 0 0
}

.site-footer .footer-top .social-menu .menu .menu-item svg {
    height: 25px;
    width: 25px
}

.site-footer .footer-top .footer-menu {
    margin-bottom: 0;
    margin-top: 10px;
    text-transform: uppercase
}

.site-footer .footer-top .footer-menu .menu {
    -webkit-columns: 2;
    -moz-columns: 2;
    column-count: 2;
    font-size: 15px;
    letter-spacing: 2px;
    line-height: 1.8;
    padding: 0 0 30px;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .site-footer .footer-top .footer-menu .menu {
        line-height: 1.7em
    }
}
.site-footer .footer-top .footer-menu .menu a{
padding-bottom: 5px;
display: block;
letter-spacing: 2px;
}

.site-footer .footer-top .footer-menu .menu .link-u {
    border-color: #fff
}

.site-footer .footer-top .footer-menu .menu .btn--footer {
    bottom: -60px;
    display: block;
    left: 0;
    position: absolute;
    width: 100%
}

@media (min-width:768px) {
    .site-footer .footer-top .footer-menu .menu .btn--footer {
        width: 300px
    }
}

@media (min-width:1024px) {
    .site-footer .footer-top .footer-menu .menu .btn--footer {
        bottom: -50px;
        left: 15px;
        width: 275px
    }
}

.site-footer .footer-top .widget_mailchimpsf_widget {
    margin-bottom: 15px
}

.site-footer .footer-top .widget_mailchimpsf_widget h1 {
    margin: 0 0 10px
}

.site-footer .footer-top .widget_mailchimpsf_widget #mc_subheader {
    font-size: 14px;
    margin: 0 0 15px
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside {
    display: flex
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_merge_var,
.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_signup_submit {
    display: inline-block
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_merge_var {
    width: 100%
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_merge_var input[type=text] {
    border: 1px solid #fff;
    height: 60px
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_signup_submit {
    margin-left: 10px
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_signup_submit input[type=submit] {
    background: transparent;
    border: 1px solid #fff;
    color: #fff;
    height: 60px;
    padding: 10px 30px
}

@media (min-width:1024px) {
    .site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_signup_submit input[type=submit] {
        padding: 10px 45px
    }
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside .mc_signup_submit input[type=submit]:hover {
    background: #fff;
    color: #000
}

.site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside #mc_message {
    font-size: 14px;
    letter-spacing: 0;
    position: absolute;
    top: 174px
}

@media (min-width:1024px) {
    .site-footer .footer-top .widget_mailchimpsf_widget .mc_form_inside #mc_message {
        top: 200px
    }
}

.site-footer .footer-top .privacy-statement {
    font-size: .7em;
    text-align: center
}

@media (min-width:1024px) {
    .site-footer .footer-top .privacy-statement {
        text-align: left
    }
}

.site-footer .footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    font-size: 12px;
    padding: 2rem 0 1.875rem;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse
}

@media (min-width:1024px) {
    .site-footer .footer-bottom {
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 1.25rem 60px 1.875rem
    }
}

.site-footer .footer-bottom .item_nav_menu {
    display: flex;
    justify-content: center;
    padding: 10px 0 25px
}

.site-footer .footer-bottom .item_nav_menu .menu {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    text-align: center;
    width: 100%
}

@media (min-width:1024px) {
    .site-footer .footer-bottom .item_nav_menu .menu {
        gap: 30px
    }
}

.site-footer .footer-bottom .item_nav_menu .menu .menu-item {
    margin: 0;
    width: 100%
}

.site-footer .footer-bottom .item_nav_menu .menu .menu-item:last-child {
    border: 0;
    margin-right: 0;
    padding-right: 0
}

.site-footer .footer-bottom .item_nav_menu .menu .menu-item a {
    color: #fff;
    font-size: 12.5px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase
}

.site-footer .footer-bottom .footer-text {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    color: #fff;
    flex-grow: 1;
    text-align: center
}

@media (min-width:1024px) {
    .site-footer .footer-bottom .footer-text {
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end
    }
}

.site-footer .footer-bottom .footer-text a,
.site-footer .footer-bottom .footer-text p {
    font-size: .9rem;
    letter-spacing: .4px;
    line-height: 1.8em
}

@media (min-width:1024px) {
    .site-footer .footer-bottom .footer-text a,
    .site-footer .footer-bottom .footer-text p {
        line-height: 1.5em
    }
}

.site-footer .footer-bottom .footer-text a {
    border-bottom: 1px solid #fff;
    padding-bottom: 2px
}

#mc_embed_signup_scroll {
    display: flex;
    align-items: center;
    -ms-flex-pack: justify;
    gap: 4px;
    justify-content: space-between
}

#mc_embed_signup_scroll .mc-field-group {
    width: -webkit-fill-available;
    width: -moz-available;
    width: fill
}

.circular-icon-team {
    left: -71px;
    max-width: 200px;
    opacity: .7;
    position: absolute;
    top: 0
}

@media (min-width:1024px) {
    .circular-icon-team {
        left: -10px;
        max-width: 255px;
        top: 0
    }
}

.circular-icon-capabilities {
    left: -71px;
    max-width: 200px;
    opacity: .7;
    position: absolute;
    top: 0;
    z-index: -1
}

@media (min-width:1024px) {
    .circular-icon-capabilities {
        left: -10px;
        max-width: 255px;
        top: 0
    }
}

.circular-icon-approach {
    left: -71px;
    max-width: 200px;
    opacity: .7;
    position: absolute;
    top: 0
}

@media (min-width:1024px) {
    .circular-icon-approach {
        left: -10px;
        max-width: 255px;
        top: 0
    }
}

.arrow-icon {
    bottom: 23px;
    max-width: 150px;
    opacity: .5;
    position: absolute;
    right: 0;
    z-index: -1
}

@media (min-width:1024px) {
    .arrow-icon {
        bottom: -43px;
        max-width: 300px
    }
}

.arrow-ds {
    left: -71px;
    max-width: 200px;
    opacity: 1;
    position: absolute;
    top: 0;
    z-index: -1
}

@media (min-width:1024px) {
    .arrow-ds {
        max-width: 300px
    }
}

.map-marker {
    left: -71px;
    max-width: 200px;
    opacity: 1;
    position: absolute;
    top: 0;
    z-index: -1
}

@media (min-width:1024px) {
    .map-marker {
        max-width: 300px
    }
}

.arrow-left {
    max-width: 200px;
    opacity: 1;
    position: absolute;
    right: -7px;
    top: 150px;
    z-index: -1
}

@media (min-width:1024px) {
    .arrow-left {
        max-width: 300px
    }
}

.error404 .content-area .error-404 {
    overflow: hidden
}

.error404 .content-area .error-404 .page-header {
    display: flex;

    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 60vh;
    position: relative;
    text-align: center
}

.error404 .content-area .error-404 .page-header h1,
.error404 .content-area .error-404 .page-header h2,
.error404 .content-area .error-404 .page-header h3 {
    color: #fff
}

.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 {
    bottom: 0;
    left: 0;
    min-height: 80vh;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: top;
    object-position: top;
    position: absolute;
    right: 0;
    top: -160px;
    width: 100%;
    z-index: -1
}

html {
    opacity: 1;
    -webkit-transition: opacity 1s ease-in-out;
    transition: opacity 1s ease-in-out;
    visibility: visible
}

.wp-block-group {
	padding-bottom: 30px;
}

.mobile-logo {
	width: 300px;
}



/* SLIDER ON HOMEPAGE  - Text Top Of Image */

.global {
  position: relative;
  height: 700px;
  background-color: #222;
}
@media (min-width: 992px) {
	.global {
		height: 850px;
	}
}

.global .swiper {
  height: 100%;
  width: 100%;
  margin: 0;
}
.global .swiper-slide {
  overflow: hidden;
  color: #fff;
}
.global .slide-content {
  position: absolute;
  top: 70%;
  left: 6%;
  transform: translateY(-50%);
  max-width: 500px;
  z-index: 10;
}
@media (min-width: 992px) {
	.global .slide-content {
		max-width: 850px;
		}
}
.global .swiper-slide h2 {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.2;
  font-family: "SFProDisplay";
  margin-bottom: 20px;
  letter-spacing: -.5px;
}
@media (min-width: 992px) {
.global .swiper-slide h2 {
		max-width: 80%;
		}
}

.global .swiper-slide p {
  font-size: 1.3em;
  line-height: 1.6;
  margin-bottom: 30px;
}
.global .swiper-slide .learn-more-btn {
  background-color: #fff;
  color: #000;
  padding: 15px 35px;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 300;
  transition: background-color 0.3s ease;
}
.global .swiper-slide .learn-more-btn:hover { background-color: #f0f0f0; }


.global .slide-inner {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 1;
}
.global .slide-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.4);
  z-index: 2;
}
.global .slide-inner img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}


.global .swiper-button-next,
.global .swiper-button-prev {
  color: #fff;
  z-index: 11;
  top: 50%;
  transform: translateY(-50%);
}
.global .swiper-button-next::after,
.global .swiper-button-prev::after { font-size: 24px; }


.global .swiper-pagination {
  position: absolute;
  bottom: 20px !important;
  left: 0;
  width: 100%;
  z-index: 10;
}
.global .swiper-pagination-progressbar {
  background: rgba(255,255,255,.2);
  height: 4px;
}
.global .swiper-pagination-progressbar-fill {
  background: #fff;
  height: 100%;
}


.global .fraction-pagination {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 12;
  color: #fff;
  font-size: 1rem;
  letter-spacing: 1px;
}



/* Buttons */

.c-button-wrapper {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.slide-button {      
  display: flex;
  width: 100%;
  max-width: 260px;
  text-align: center;
  color: #fff;
  justify-content: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  background: #880808;
  border: 1px solid #880808;
  border-radius: 4px;
  padding: 20px 15px;
  font-size: 16px;
  text-decoration: none;
  font-family: "Roboto", arial, sans-serif;
}





/* SLIDER ON HOMEPAGE - MOBILE-FIRST

/* Global slider container
.global {
  position: relative;
  height: 78vh;
  background-color: #222; 
}

.global .swiper {
  height: 100%;
  width: 100%;
  margin: 0;
}

.global .swiper-slide {
  overflow: hidden;
  color: #fff;
  display: flex;
  flex-direction: column;   /* stack image + content for mobile 
  align-items: center;
}

/* Slide Inner Image Layer 
.global .slide-inner {
  position: relative; 
  width: 100%;
  height: 43vw; 
  z-index: 1;
}

.global .slide-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.4);
  z-index: 2;
}

.global .slide-inner img {
  width: 100%;
  height: 43vw;
  object-fit: cover;
  display: block;
}


.global .slide-content {
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  max-width: 100%;
  padding: 15px;
  text-align: center;
  z-index: 10;
  background: none;  
}

.global .swiper-slide h2 {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.2;
  font-family: "SFProDisplay";
  margin-bottom: 20px;
  letter-spacing: -.5px;
}

.global .swiper-slide p {
  font-size: 1.3em;
  line-height: 1.6;
  margin-bottom: 30px;
}

.global .swiper-slide .learn-more-btn {
  background-color: #fff;
  color: #000;
  padding: 15px 35px;
  border: none;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 300;
  transition: background-color 0.3s ease;
}

.global .swiper-slide .learn-more-btn:hover {
  background-color: #f0f0f0;
}


.c-button-wrapper {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center;
}

.slide-button {      
  display: flex;
  width: 100%;
  max-width: 260px;
  text-align: center;
  color: #fff;
  justify-content: center;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 500;
  background: #880808;
  border: 1px solid #880808;
  border-radius: 4px;
  padding: 20px 15px;
  font-size: 16px;
  text-decoration: none;
  font-family: "Roboto", arial, sans-serif;
}


.global .swiper-button-next,
.global .swiper-button-prev {
  color: #fff;
  z-index: 11;
  top: 50%;
  transform: translateY(-50%);
}

.global .swiper-button-next::after,
.global .swiper-button-prev::after {
  font-size: 24px;
}


.global .swiper-pagination {
  position: absolute;
  bottom: 20px !important;
  left: 0;
  width: 100%;
  z-index: 10;
}

.global .swiper-pagination-progressbar {
  background: rgba(255,255,255,.2);
  height: 4px;
}

.global .swiper-pagination-progressbar-fill {
  background: #fff;
  height: 100%;
}

.global .fraction-pagination {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 12;
  color: #fff;
  font-size: 1rem;
  letter-spacing: 1px;
}

@media (min-width: 992px) {
  .global .swiper-slide {
    flex-direction: initial;
    align-items: initial;
  }

  .global .slide-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }

  .global .slide-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .global .slide-content {
    position: absolute;
    top: 50%;
    left: 7%;
    transform: translateY(-50%);
    max-width: 800px;
    text-align: left;
  }

  .global .swiper-slide h2 {
    max-width: 80%;
  }

  .c-button-wrapper {
    justify-content: flex-start;
  }
}
*/



/* PAGE HEADER */




/* HERO ZOOMING INTERIOR HEADER */

.hero-main-container {
  position: relative;
  height: 565px;
  width: 100%;
  overflow: hidden;
}

.hero-main-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 565px;
  overflow: hidden;
  z-index: 1;
}


.hero-main-image img {
  width: 100%;
  height: 565px;
  object-fit: cover;
  transform: scale(1);
  animation: zoomPan 8s ease-out forwards;
}

@media (min-width: 992px) {
	.hero-main-container, .hero-main-image, .hero-main-image img {
	  height: 600px;
	}
}





@keyframes zoomPan {
  from {
    transform: scale(1.1);
  }
  to {
    transform: scale(1);
  }
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.4);
  z-index: 2;
}

.hero-main-content {
  position: absolute;
  z-index: 3;
  color: #fff;
  bottom: 3%;
  left: 6%;
  max-width: 800px;
}

.hero-main-content h1 {
  font-size: 42px;
  font-weight: 400;
  margin-bottom: 20px;
  font-family: "Roboto", arial;
}

.hero-main-content h2 {
  font-size: 24px;
  font-weight: 300;
  margin-bottom: 30px;
}

.primary-cta-button {
  display: inline-block;
  padding: 12px 24px;
  color: #fff;
  border: 2px solid #fff;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.3s, color 0.3s;
}

.primary-cta-button:hover {
  background: #fff;
  color: #000;
}

/* Top-left circle */
.circle-top-left {
  position: absolute;
  width: 220px;
  height: 220px;
  border: 55px solid rgba(255, 255, 255, 0.2);
  border-radius: 100%;
  top: -80px;
  left: -95px;
  z-index: 4;
}

/* Bottom-right circle */
.circle-bottom-right {
  position: absolute;
  width: 25vw;
  height: 25vw;
  border: 80px solid rgba(255, 255, 255, 0.2);
  border-radius: 100%;
  bottom: -10vw;
  right: -10vw;
  z-index: 4;
}

.logo--main svg, .mobile-logo svg {
    width: 200px;
}

.btn-border {
	padding: 15px;
	border: 1px solid rgba(91, 91, 91, 0.9);
}

.left-pad {
	padding: 0 35px 0;
}

.card_services_grid a {
	text-align: center;
	display: flex;
	justify-content: center;
	padding: 20px;
	font-size: 24px;
	letter-spacing: 2px;
}
.card_services_grid a:hover {
	color: #c90000 !important;
}

.swiper-intro {
    text-align: center;
    max-width: 80%;
    margin: 0 auto;

}

@media (min-width: 992px) {
	.swiper-intro {
		max-width:50%;
	}
}

.swiper-intro h2 {
font-size: 30px;
}

/* WP BLOCK BUTTON */

/* =========================================================
   Base Button + Arrow
   ========================================================= */

.twn-button a,
.wp_block_btn a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px; /* space between text and arrow */
  padding: 24px;
  text-decoration: none;
}

.twn-button a::after,
.wp_block_btn a::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M26.595 5.826l-0.001-0.013-0.002-0.002c-0.056-0.121-0.139-0.221-0.243-0.296l-0.002-0.002c-0.022-0.017-0.046-0.034-0.072-0.049l-0.003-0.002c-0.105-0.068-0.233-0.109-0.371-0.113l-0.001-0h-14.143c-0.414 0-0.75 0.336-0.75 0.75s0.336 0.75 0.75 0.75v0h12.332l-18.52 18.519c-0.136 0.136-0.22 0.324-0.22 0.531 0 0.415 0.336 0.751 0.751 0.751 0.207 0 0.394-0.084 0.53-0.219v0l18.52-18.52v12.33c0 0.414 0.336 0.75 0.75 0.75s0.75-0.336 0.75-0.75v0-14.142c-0.001-0.099-0.021-0.193-0.057-0.279l0.002 0.005z' fill='%23fff'/></svg>");
  transition: transform 0.3s ease;
}

/* =========================================================
   Variants (add as extra classes in Block Editor)
   ========================================================= */

/* Slide right on hover */
.arrow-slide::after {
  transition: transform 0.3s ease;
}
.arrow-slide:hover::after {
  transform: translateX(4px);
}

/* Rotate directions */
.arrow-up::after {
  transform: rotate(-90deg);
}
.arrow-down::after {
  transform: rotate(90deg);
}
.arrow-left::after {
  transform: rotate(180deg);
}
/* Default is right →, so no class needed */

/* Rotate on hover (flip upwards) */
.arrow-rotate:hover::after {
  transform: rotate(-90deg);
}


/* ARROW SHOW ON HOVER BUTTON */

  /* Base button */
.btn-main,
.btn-right {
  background: #1d1d1d;
  border: 2px solid #1d1d1d;
  border-radius: 3px;
  font-size: 1rem;
  color: white;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 1.4rem 2.1rem;
  transition: color 0.1s cubic-bezier(0.16, 0.08, 0.355, 1),
              background 0.1s cubic-bezier(0.16, 0.08, 0.355, 1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  cursor: pointer;
  min-width: 20rem;
  outline: none;
  position: relative;
  overflow: hidden;
}

@media (min-width: 400px) {
  .btn-main,
  .btn-right {
    width: auto;
  }
}

@media (min-width: 800px) {
  .btn-main,
  .btn-right {
    font-size: 1.1rem;
    padding: 1.6rem 2.8rem;
  }
}

.btn-main:hover,
.btn-right:hover {
  background: #2a2a2a;
  border-color: #2a2a2a;
  color: #fff;
}

/* Border variant */
.btn-border {
  background-color: transparent;
  color: #1d1d1d;
}

/* Arrow effect via ::after */
.btn-arrow::after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  background: no-repeat center / contain
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36.1 25.8'><g><line fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-miterlimit='10' x1='0' y1='12.9' x2='34' y2='12.9'/><polyline fill='none' stroke='%23FFFFFF' stroke-width='3' stroke-miterlimit='10' points='22.2,1.1 34,12.9 22.2,24.7'/></g></svg>");
  transition: all 300ms ease-out;
  opacity: 0;
  transform: translateX(-10px);
}

/* Hover effect */
.btn-arrow:hover::after {
  opacity: 1;
  transform: translateX(0);
}

.wp-block-buttons>.wp-block-button.wp-block-button__width-100 {
	margin: 0;
	max-width: 300px;
	display: flex;
}

.block_center_btn {
	margin: 0 auto;
	display: flex;
	width: 300px;
	height: 60px;
}
.block_center_btn a::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M26.595 5.826l-0.001-0.013-0.002-0.002c-0.056-0.121-0.139-0.221-0.243-0.296l-0.002-0.002c-0.022-0.017-0.046-0.034-0.072-0.049l-0.003-0.002c-0.105-0.068-0.233-0.109-0.371-0.113l-0.001-0h-14.143c-0.414 0-0.75 0.336-0.75 0.75s0.336 0.75 0.75 0.75v0h12.332l-18.52 18.519c-0.136 0.136-0.22 0.324-0.22 0.531 0 0.415 0.336 0.751 0.751 0.751 0.207 0 0.394-0.084 0.53-0.219v0l18.52-18.52v12.33c0 0.414 0.336 0.75 0.75 0.75s0.75-0.336 0.75-0.75v0-14.142c-0.001-0.099-0.021-0.193-0.057-0.279l0.002 0.005z' fill='%23fff'/></svg>");
  transition: transform 0.3s ease;
}


.btn-primary-red {
    border: 1px solid var(--color-red-primary);
    display: flex;
    justify-content: center;
    height: 60px;
    gap: 15px;
    align-content: center;
    background: var(--color-red-primary);
    align-items: center;
    width: 100%;
    color: #fff;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 3px;
    width: 300px;
}
.btn-primary-red a::after {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat center / contain url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'><path d='M26.595 5.826l-0.001-0.013-0.002-0.002c-0.056-0.121-0.139-0.221-0.243-0.296l-0.002-0.002c-0.022-0.017-0.046-0.034-0.072-0.049l-0.003-0.002c-0.105-0.068-0.233-0.109-0.371-0.113l-0.001-0h-14.143c-0.414 0-0.75 0.336-0.75 0.75s0.336 0.75 0.75 0.75v0h12.332l-18.52 18.519c-0.136 0.136-0.22 0.324-0.22 0.531 0 0.415 0.336 0.751 0.751 0.751 0.207 0 0.394-0.084 0.53-0.219v0l18.52-18.52v12.33c0 0.414 0.336 0.75 0.75 0.75s0.75-0.336 0.75-0.75v0-14.142c-0.001-0.099-0.021-0.193-0.057-0.279l0.002 0.005z' fill='%23fff'/></svg>");
  transition: transform 0.3s ease;
}


/* PHOTOSWIPE LIGHTBOX */
/* enque conditionally on certain pages with JS in functions */

/* Lightbox overlay */
.lightbox-overlay {
    position: fixed;
    top: 0 ;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.85);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

/* Lightbox image */
.lightbox-overlay img {
    max-width: 90%;
    max-height: 90%;
    box-shadow: 0 0 30px rgba(0,0,0,0.7);
    border-radius: 5px;
}

/* Navigation buttons */
.lightbox-prev,
.lightbox-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    color: #fff;
    font-size: 2em;
    cursor: pointer;
    user-select: none;
    padding: 0 15px;
}

.lightbox-prev { left: 10px; }
.lightbox-next { right: 10px; }

/* Close button */
.lightbox-close {
    position: absolute;
    top: 20px;
    right: 30px;
    color: #fff;
    font-size: 2em;
    cursor: pointer;
}

.wp-lightbox-container button:focus, .wp-lightbox-container button:hover, .wp-lightbox-container button:not(:hover):not(:active):not(.has-background) {
	top: 0 !important;
}


/* Stretch the default Gutenberg lightbox trigger over the whole image */
.wp-lightbox-container {
  position: relative;
}

.wp-lightbox-container button.lightbox-trigger {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important; /* remove black box */
  cursor: pointer;
}

/* Optional: keep your white icon in the corner */
.wp-lightbox-container button.lightbox-trigger::after {
  content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'><path d='M9 3h6a6 6 0 0 1 6 6v6a6 6 0 0 1-6 6H9a6 6 0 0 1-6-6V9a6 6 0 0 1 6-6zm3 4a1 1 0 0 0-1 1v2H9a1 1 0 0 0 0 2h2v2a1 1 0 1 0 2 0v-2h2a1 1 0 1 0 0-2h-2V8a1 1 0 0 0-1-1z'/></svg>");
  position: absolute;
  top: 16px;
  right: 16px;
  width: 24px;
  height: 24px;
}




/* INTERIOR HEADER SINGLE SERVICES */

.hero-main {
  position: relative;
  color: #fff;
  overflow: hidden;
  height: 600px; /* removed stray slash */
}

.hero-main::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background: rgba(0,0,0,0.24);        
  z-index: 2;
}

.hero-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0;
  animation: fadeIn 1s ease forwards;
}

.hero__container {
  position: absolute;
  bottom: 5%;
  left: 5%;
  transform: translateY(-50%);
  z-index: 2;
  width: 100%;
}

.hero__title {
  font-size: 2em;
  margin: 0;
  opacity: 0;
  animation: fadeIn 1s ease forwards;
  animation-delay: 0.6s;
  font-weight: normal;
}

.hero__cta {
  position: absolute;
  bottom: 0;
  width: 100%;
  border-top: 1px solid rgba(255,255,255,0.5);
  z-index: 2;
}

.hero__cta .hero__wrapper {
  display: flex;
  align-items: center;
  height: 5rem;
  padding: 0px;
  max-width: 90%;
  margin: 0 auto;
}

.header-btn {
  color: #fff;
  text-decoration: none;
  font-size: .85rem;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  display: flex;
  align-items: center;
  transition: color 0.3s ease;
  opacity: 0;
  animation: fadeIn 1s ease forwards;
  animation-delay: 1.2s;
  font-weight: normal;
}

.header-btn svg {
  margin-left: 1rem;
  width: 24px;
  height: 24px;
  stroke: currentColor;
  fill: none;
  transition: transform 0.3s ease;
}

.header-btn:hover svg {
  transform: translateX(6px);
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 768px) {
  .hero-main {
    height: 580px;
  }

  .hero__title {
    font-size: 35px;
    max-width: 90%;
    margin-bottom: 1.5rem;
  }

  .hero__cta .hero__wrapper {
    height: 4rem;
  }
}

@media (min-width: 1024px) {
  .hero-main {
    height: 600px;
  }

  .hero__container .wrapper,
  .hero__cta .hero__wrapper {
    padding-left: 5rem;
  }

  .hero__title {
    font-size: 2rem;
    max-width: 55%;
  }
}


/* template part - homepge content-introduction.php */

.card-container {
  display: grid;
 grid-gap: 10px;
  grid-template-columns: 1fr;

}
@media (min-width: 992px) {
	.card-container {
		  grid-template-columns: 1fr 1fr;
		margin: 0 auto 6em;
		max-width: 90%;
	}
}
@media (min-width: 1100px) {
	.card-container {
		  grid-template-columns: repeat(3,1fr);
		margin: 0 auto 6em;
		max-width: 90%;
	}
}
.link-card {
  position: relative;
  display: block;
  width: 100%;

  height: 280px;
  text-decoration: none;
  overflow: hidden;
  opacity: 0;
  animation: fadeIn 0.5s ease-in-out forwards var(--animation-delay);
}

.link-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.link-card-text {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0 20px 30px;
  color: #fff;
  font-family: arial, sans-serif;
  text-transform: uppercase;
  font-size: 20px;
  letter-spacing: 2px;
  font-weight: 300;
  line-height: 1.5;
  transition: transform 0.3s ease-in-out;
  z-index: 2;
}

.link-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 50%);
  z-index: 1;
}

.link-card::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 100px 100px;
  border-color: transparent transparent #eb0a28 transparent;
  z-index: 3;
}

.link-card:hover .link-card-text {
  transform: translateY(-10px);
}

.link-card:hover .link-card-img {
  transform: scale(1.05);
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive adjustments */
@media (max-width: 1200px) {
  .link-card {
    max-width: calc(50% - 10px);
  }
}

@media (max-width: 768px) {
  .link-card {
    max-width: 100%;
    height: 300px;
  }
  .link-card-text {
    font-size: 18px;
    padding: 0 15px 25px;
  }
  .link-card::after {
    border-width: 0 0 80px 80px;
  }
}

@media (max-width: 480px) {
  .link-card {
    height: 250px;
  }
  .link-card-text {
    font-size: 16px;
    padding: 0 10px 20px;
  }
  .link-card::after {
    border-width: 0 0 60px 60px;
  }
}


.container-grid {
	width: 100%;
	padding: 0 30px;
	margin: 4em auto;
}
@media (min-width: 992px) {
	.container-grid {
		max-width: 95%;
		margin: 8vw auto;
	}
}

.grid_two {
		display: grid;	
}

@media (min-width: 992px) {
.grid_two {
		grid-template-columns: 30% 1fr;
		grid-gap: 90px;
	}
}
.grid_two h2{
		font-size: 1.7em;
		letter-spacing: 0;
		margin-bottom: 20px;
	
}

.grid_two h1 {font-size: 2em;		margin-bottom: 20px;}
.grid_two h3{
		font-size: 23px;
		letter-spacing: 2px;
		margin-bottom: 20px;
		
}


.grid_two p {
		margin-bottom: 1em;
	letter-spacing: 0;
}

/* PARALLAX SERVICE SWIPER */
    .services__card-link-wrapper {
        text-decoration: none;
        display: block;
        color: inherit;
    }

    .cards .carousel-swiper {
        margin: 0 auto;
        padding: 5em 30px 9em;
    }

    .cards .carousel-swiper .swiper-wrapper {
        flex: none;
        align-items: stretch; 
        display: flex;
        margin: 5em 20px auto;
    }

    .cards .carousel-swiper .swiper-slide {
        flex: none;
        height: auto; 
    }
    .cards .carousel-swiper .swiper-slide .services__card {
        position: relative;
        overflow: hidden;
        height: 100%;
        background-color: #111;
        border-radius: 1px;
        display: flex;
        flex-direction: column;
    }

    /* --- PARALLAX EFFECT CSS (CORRECTED) --- */
    .cards .carousel-swiper .swiper-slide .services__card .services__card__image {
        display: inline-block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
        /* This makes the image wider than the card, allowing it to slide */
        margin-left: -100px;
        width: 130%;
        height: 100%;
        max-width: none;
        object-fit: cover;
        border-radius: 5px;
        transition: transform 0.7s;
    }

    .cards .carousel-swiper .swiper-slide.is-active .services__card__image {
        /* This slides the image back into view on the active slide */
        transform: translateX(100px);
    }
    /* --- END PARALLAX CSS --- */

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content {
        position: relative;
        z-index: 3;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        height: 100%;
        padding: 6em 3em;
        border-radius: 5px;
        transition: all 500ms ease-in-out;
        flex-grow: 1; /* Allow content to fill space */
    }
    
    .services__card__content p {
	    max-width: 80%;
	    opacity: 0;
	    height: 0;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content h3 {
        margin-bottom: 10px;
        opacity: 1;
        font-size: 14px;
        text-transform: uppercase;
        letter-spacing: 2px;
        font-weight: 300;
        color: #ebefe3;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content h2 {
        margin-bottom: 20px;
        font-size: 1.7em;
        font-weight: 400;
        line-height: 1.2;
        color: #fff;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content h3 {
        margin-bottom: 30px;
        max-width: 80%;
        color: #fff;
        font-size: 14px;
        font-weight: 300;
        line-height: 1.36;
        flex-grow: 1; /
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn {
        display: inline-flex; /
        justify-content: center;
        align-items: center;
        padding: 16px 65px;
        background: #000;
        color: #fff;
        border-radius: 3px;
        text-decoration: none;
         transition: all 500ms ease-in-out;
        margin-top: auto; 
    }

    .services__card-link-wrapper:hover .slide__btn {
        background: #111;
        color: #fff;
         transition: all 500ms ease-in-out;
    }

    .services__card-link-wrapper:hover .slide__btn .slide__btn__text,
    .services__card-link-wrapper:hover .slide__btn .slide__btn__icon path {
        color: #fff;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn .slide__btn__text {
        margin-right: 5px;
        font-size: 12px;
        font-weight: 300;
        text-transform: uppercase;
        letter-spacing: 1px;
        color: #fff;
        text-align: cemter;
        transition: all 500ms ease-in-out;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn .slide__btn__icon {
        width: 15px;
        font-size: 24px;
    }

    .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn .slide__btn__icon path {
        color: #fff;
        transition: 0.3s;
    }

    .cards .carousel-swiper .swiper-slide .services__card .slide__gradient {
        position: absolute;
        z-index: 2;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: linear-gradient(111deg, #000, rgba(0, 0, 0, 0.15) 60%);
    }

    .container-slides {
        width: 100%;
    }

    /* Responsive adjustments */
    @media (max-width: 1199px) {
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content {
            padding: 3em;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content h2 {
            font-size: 1.8em;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content p {
            font-size: 16px;
        }
    }
    @media (max-width: 767px) {
        .cards .carousel-swiper {
            padding: 3em 15px 6em;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content {
            padding: 2em;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content h2 {
            font-size: 1.6em;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content p {
            font-size: 14px;
            max-width: 100%;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn {
            padding: 15px 30px;
        }
        .cards .carousel-swiper .swiper-slide .services__card .services__card__content .slide__btn .slide__btn__text {
            font-size: 16px;
        }
    }

.section-gray {
	background: #202020;
	
}






/* =========================
   Masonry Gallery Styles
   ========================= */
.masonry-gallery-section {
  padding: 2rem 1rem;
  text-align: center;
}
.masonry-gallery-section h2 {
    font-size: 1.8rem;
    margin-bottom: 3.5rem;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-align: left;
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
}
/* --- CSS Grid Masonry Layout --- */
.masonry-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 5px; /* Even smaller rows for taller images */
  gap: 20px;
  margin: 0 auto;
}

.masonry-item {
  display: block;
  overflow: hidden;
  transition: transform .3s ease, box-shadow .3s ease;
  background: #f5f5f5;
}

.masonry-item:hover {
  transform: translateY(-4px);

}

.masonry-item img {
  width: 100%;
  height: 100%;

  display: block;
  object-fit: cover;
  transition: transform .3s ease;
}

.masonry-item:hover img {
  transform: scale(1.05);
}

/* Responsive breakpoints */
@media (max-width: 1200px) {
  .masonry-gallery { 
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .masonry-gallery { 
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    grid-auto-rows: 8px;
  }
}

@media (max-width: 480px) {
  .masonry-gallery { 
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
