/* ===== Global fonts ===== */

@font-face {
    font-family: 'ChakraPetch';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/ChakraPetch-Light.woff2') format('woff2'),
         url('../fonts/ChakraPetch-Light.woff') format('woff');
}

@font-face {
    font-family: 'ChakraPetch';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/ChakraPetch-Regular.woff2') format('woff2'),
         url('../fonts/ChakraPetch-Regular.woff') format('woff');
}

@font-face {
    font-family: 'ChakraPetch';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/ChakraPetch-Medium.woff2') format('woff2'),
         url('../fonts/ChakraPetch-Medium.woff') format('woff');
}

@font-face {
    font-family: 'ChakraPetch';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/ChakraPetch-SemiBold.woff2') format('woff2'),
         url('../fonts/ChakraPetch-SemiBold.woff') format('woff');
}

@font-face {
    font-family: 'ChakraPetch';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/ChakraPetch-Bold.woff2') format('woff2'),
         url('../fonts/ChakraPetch-Bold.woff') format('woff');
}

@font-face {
    font-family: 'AvenirLTStd';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: url('../fonts/AvenirLTStd-Book.woff2') format('woff2'),
         url('../fonts/AvenirLTStd-Book.woff') format('woff');
}

@font-face {
    font-family: 'AvenirLTStd';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/AvenirLTStd-Roman.woff2') format('woff2'),
         url('../fonts/AvenirLTStd-Roman.woff') format('woff');
}

@font-face {
    font-family: 'AvenirLTStd';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('../fonts/AvenirLTStd-Medium.woff2') format('woff2'),
         url('../fonts/AvenirLTStd-Medium.woff') format('woff');
}

@font-face {
    font-family: 'Peckham Press Trial';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/PeckhamPress-Trial.woff2') format('woff2'),
         url('../fonts/PeckhamPress-Trial.woff') format('woff');
}

@font-face {
    font-family: 'peckham-press';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/peckham-press.woff2') format('woff2'),
         url('../fonts/PeckhamPress-Trial.woff2') format('woff2');
}

@font-face {
    font-family: 'peckham-press-local';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/peckham-press.woff2') format('woff2'),
         url('../fonts/PeckhamPress-Trial.woff2') format('woff2');
}

@font-face {
    font-family: 'peckham-press-local';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/peckham-press.woff2') format('woff2'),
         url('../fonts/PeckhamPress-Trial.woff2') format('woff2');
}

@font-face {
    font-family: 'Figtree';
    src: url('../fonts/fingtree/Figtree-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/inter/Inter_18pt-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Manrope';
    src: url('../fonts/manrope/Manrope-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Bebas Neue';
    src: url('../fonts/bebusneue/BebasNeue-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

/* ===== Header ===== */
html {
 line-height: 1.15;
 -webkit-text-size-adjust: 100%;
}
*,
*::before,
*::after {
 box-sizing: border-box;
}
body {
 margin: 0;
 background-color: #fff;
 color: #333;
 font-family:
 -apple-system,
 BlinkMacSystemFont,
 Segoe UI,
 Roboto,
 Helvetica Neue,
 Arial,
 sans-serif;
 font-size: 1rem;
 font-weight: 400;
 line-height: 1.5;
 -webkit-font-smoothing: antialiased;
}
a {
 background-color: transparent;
 color: inherit;
    text-decoration: none;
  }
img {
 max-width: 100%;
 height: auto;
 border: 0;
 display: inline-block;
 vertical-align: middle;
}
ul,
li {
 margin: 0;
 padding: 0;
 list-style: none;
}

@media all {
 .elementor-widget-image {
 text-align: center;
 }
 .elementor-widget-image a {
 display: inline-block;
 }
 .elementor-widget-image img {
 display: inline-block;
 vertical-align: middle;
 }
}
@media all {
 .screen-reader-text {
 clip: rect(1px, 1px, 1px, 1px);
 height: 1px;
 overflow: hidden;
 position: absolute !important;
 width: 1px;
 word-wrap: normal !important;
 }
}
@media all {
 .elementor-kit-6 {
 color: #6d7479;
 font-family: AvenirLTStd, Sans-serif;
 font-size: 22px;
    font-weight: 500;
 line-height: 1.5em;
 }
 .elementor-kit-6 h1 {
 color: #fff;
 font-family: "Peckham Press Trial", Sans-serif;
 font-size: 160px;
 font-weight: 400;
 line-height: 1.1em;
 }
 .elementor-kit-6 h2 {
 color: #1b2e3c;
 font-family: ChakraPetch, Sans-serif;
 font-size: 130px;
 font-weight: 700;
 text-transform: uppercase;
 line-height: 1.1em;
 }
 .e-con {
 --container-max-width: 1566px;
 --container-default-padding-top: 0px;
 --container-default-padding-right: 0px;
 --container-default-padding-bottom: 0px;
 --container-default-padding-left: 0px;
 }
 .elementor-widget:not(:last-child) {
 margin-block-end: 20px;
 }
 .elementor-element {
 --widgets-spacing-row: 20px;
 --widgets-spacing-column: 20px;
 }
 @media (max-width: 1700px) {
 .e-con {
 --container-max-width: 1400px;
 }
 }
 @media (max-width: 1500px) {
 .e-con {
 --container-max-width: 1180px;
 }
 }
}
@media all {
 .elementor-43 .elementor-element.elementor-element-c9f85bd {
 --display: flex;
 --flex-direction: row;
 --container-widget-width: calc(
 (1 - var(--container-widget-flex-grow)) * 100%
 );
 --container-widget-flex-grow: 1;
 --flex-wrap-mobile: wrap;
 --align-items: center;
 --row-gap: 0px;
 --column-gap: 0px;
 --padding-top: 60px;
 --padding-bottom: 60px;
 --padding-left: 100px;
 --padding-right: 100px;
 }
 .elementor-43
 .elementor-element.elementor-element-c9f85bd:not(
 .elementor-motion-effects-element-type-background
 ) {
 background-color: #1b2e3c;
 }
 .elementor-43 .elementor-element.elementor-element-c9f85bd.e-con {
 --align-self: center;
 }
 .elementor-43 .elementor-element.elementor-element-9cd7f26 {
 --display: flex;
 --flex-direction: column;
 --container-widget-width: 100%;
 --container-widget-flex-grow: 0;
 --flex-wrap-mobile: wrap;
 }
 .elementor-43 .elementor-element.elementor-element-b4a90b1 {
 text-align: left;
 }
 .elementor-43 .elementor-element.elementor-element-b4a90b1 img {
 width: 185px;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f {
 --display: flex;
 --flex-direction: column;
 --container-widget-width: 100%;
 --container-widget-flex-grow: 0;
 --flex-wrap-mobile: wrap;
 --justify-content: center;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f.e-con {
 --flex-grow: 0;
 --flex-shrink: 0;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 > .elementor-widget-container {
 padding: 0;
 }
 .elementor-43 .elementor-element.elementor-element-eacde70.elementor-element {
 --align-self: center;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-menu-toggle {
 margin-left: auto;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu
 .elementor-item {
 font-family: ChakraPetch, Sans-serif;
 font-size: 22px;
 font-weight: 500;
 text-transform: uppercase;
 letter-spacing: 2.2px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item {
 color: #b12435;
 fill: #b12435;
 padding-left: 37px;
 padding-right: 37px;
 padding-top: 0;
 padding-bottom: 0;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-menu-toggle,
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--dropdown
 a {
 color: #b12435;
 fill: #b12435;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--dropdown
 .elementor-item {
 font-family: ChakraPetch, Sans-serif;
 font-size: 22px;
 font-weight: 700;
 text-transform: uppercase;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 div.elementor-menu-toggle {
 color: #b12435;
 }
 .elementor-43 .elementor-element.elementor-element-0f641d4 {
 --display: flex;
 --flex-direction: column;
 --container-widget-width: 100%;
 --container-widget-flex-grow: 0;
 --flex-wrap-mobile: wrap;
 }
 .elementor-location-header:before {
 content: "";
 display: table;
 clear: both;
 }
 @media (min-width: 768px) {
 .elementor-43 .elementor-element.elementor-element-9cd7f26 {
 --width: 15%;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f {
 --width: 70%;
 }
 .elementor-43 .elementor-element.elementor-element-0f641d4 {
 --width: 15%;
 }
 }
 @media (max-width: 1199px) and (min-width: 768px) {
 .elementor-43 .elementor-element.elementor-element-9cd7f26 {
 --width: 40%;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f {
 --width: 60%;
 }
 .elementor-43 .elementor-element.elementor-element-0f641d4 {
 --width: 10%;
 }
 }
 @media (max-width: 1700px) {
 .elementor-43 .elementor-element.elementor-element-c9f85bd {
 --padding-top: 50px;
 --padding-bottom: 50px;
 --padding-left: 80px;
 --padding-right: 80px;
 }
 .elementor-43 .elementor-element.elementor-element-b4a90b1 img {
 width: 159px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu
 .elementor-item {
 font-size: 18px;
 letter-spacing: 2px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item {
 padding-left: 30px;
 padding-right: 30px;
 }
 }
 @media (max-width: 1500px) {
 .elementor-43 .elementor-element.elementor-element-c9f85bd {
 --padding-top: 40px;
 --padding-bottom: 40px;
 --padding-left: 40px;
 --padding-right: 40px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu
 .elementor-item {
 font-size: 16px;
 letter-spacing: 1.5px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item {
 padding-left: 20px;
 padding-right: 20px;
 }
 }
 @media (max-width: 1199px) {
 .elementor-43 .elementor-element.elementor-element-c9f85bd {
 --padding-top: 20px;
 --padding-bottom: 20px;
 --padding-left: 20px;
 --padding-right: 20px;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f {
 --flex-direction: row;
 --container-widget-width: calc(
 (1 - var(--container-widget-flex-grow)) * 100%
 );
 --container-widget-flex-grow: 1;
 --flex-wrap-mobile: wrap;
 --justify-content: flex-end;
 --align-items: flex-end;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu--dropdown
 a {
 padding-left: 29px;
 padding-right: 29px;
 padding-top: 15px;
 padding-bottom: 15px;
 }
 .elementor-43
 .elementor-element.elementor-element-eacde70
 .elementor-nav-menu__container.elementor-nav-menu--dropdown {
 margin-top: 28px !important;
 }
 .elementor-43 .elementor-element.elementor-element-eacde70 {
 --nav-menu-icon-size: 27px;
 }
 .elementor-43
 .elementor-element.elementor-element-f38a590.elementor-element {
 --align-self: flex-end;
 }
 }
 @media (max-width: 767px) {
 .elementor-43 .elementor-element.elementor-element-9cd7f26 {
 --width: 50%;
 }
 .elementor-43 .elementor-element.elementor-element-e11e34f {
 --width: 35%;
 }
 .elementor-43 .elementor-element.elementor-element-0f641d4 {
 --width: 15%;
 }
 }
}
@media all {
 .elementor-item:after,
 .elementor-item:before {
 display: block;
 position: absolute;
 }
 .elementor-item:not(:hover):not(:focus):not(.elementor-item-active):not(
 .highlighted
 ):after,
 .elementor-item:not(:hover):not(:focus):not(.elementor-item-active):not(
 .highlighted
 ):before {
 opacity: 0;
 }
 .elementor-nav-menu--main .elementor-nav-menu a {
 padding: 13px 20px;
 }
 .elementor-nav-menu--layout-horizontal {
    display: flex;
 }
 .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
 display: flex;
 flex-wrap: wrap;
 }
 .elementor-nav-menu--layout-horizontal .elementor-nav-menu a {
 flex-grow: 1;
 white-space: nowrap;
 }
 .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li {
 display: flex;
 }
 .elementor-nav-menu--layout-horizontal
 .elementor-nav-menu
 > li:not(:first-child)
 > a {
 margin-inline-start: var(--e-nav-menu-horizontal-menu-item-margin);
 }
 .elementor-nav-menu--layout-horizontal
 .elementor-nav-menu
 > li:not(:last-child)
 > a {
 margin-inline-end: var(--e-nav-menu-horizontal-menu-item-margin);
 }
 .elementor-nav-menu--layout-horizontal
 .elementor-nav-menu
 > li:not(:last-child):after {
 align-self: center;
 border-color: var(--e-nav-menu-divider-color, #000);
 border-left-style: var(--e-nav-menu-divider-style, solid);
 border-left-width: var(--e-nav-menu-divider-width, 2px);
 content: var(--e-nav-menu-divider-content, none);
 height: var(--e-nav-menu-divider-height, 35%);
 }
 .elementor-nav-menu__align-end .elementor-nav-menu {
 justify-content: flex-end;
 margin-inline-start: auto;
 }
 .elementor-widget-nav-menu .elementor-widget-container {
    display: flex;
    flex-direction: column;
 }
 .elementor-nav-menu {
 position: relative;
 z-index: 2;
 }
 .elementor-nav-menu:after {
 clear: both;
 content: " ";
 display: block;
 font: 0/0 serif;
 height: 0;
 overflow: hidden;
 visibility: hidden;
 }
 .elementor-nav-menu,
 .elementor-nav-menu li {
 display: block;
 line-height: normal;
 list-style: none;
 margin: 0;
 padding: 0;
 }
 .elementor-nav-menu a,
 .elementor-nav-menu li {
 position: relative;
 }
 .elementor-nav-menu li {
 border-width: 0;
 }
 .elementor-nav-menu a {
 align-items: center;
    display: flex;
 }
 .elementor-nav-menu a {
 line-height: 20px;
 padding: 10px 20px;
 }
 .elementor-menu-toggle {
 align-items: center;
 background-color: rgba(0, 0, 0, 0.05);
 border: 0 solid;
 border-radius: 3px;
 color: #33373d;
    display: flex;
 font-size: var(--nav-menu-icon-size, 22px);
    justify-content: center;
 padding: 0.25em;
 }
 .elementor-menu-toggle:not(.elementor-active)
 .elementor-menu-toggle__icon--close {
 display: none;
 }
 .elementor-nav-menu--dropdown {
 background-color: #fff;
 font-size: 13px;
 }
 .elementor-nav-menu--dropdown-none .elementor-nav-menu--dropdown {
 display: none;
 }
 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
 margin-top: 10px;
 overflow-x: hidden;
 overflow-y: auto;
 transform-origin: top;
 }
 .elementor-nav-menu--dropdown a {
 color: #33373d;
 }
 .elementor-nav-menu--toggle
 .elementor-menu-toggle:not(.elementor-active)
 + .elementor-nav-menu__container {
 max-height: 0;
 overflow: hidden;
 transform: scaleY(0);
 }
 .elementor-nav-menu--stretch
 .elementor-nav-menu__container.elementor-nav-menu--dropdown {
 position: absolute;
 z-index: 9997;
 }
 @media (max-width: 1199px) {
 .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main {
 display: none;
 }
 }
 @media (min-width: 1200px) {
 .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle,
 .elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown {
 display: none;
 }
 .elementor-nav-menu--dropdown-tablet
 nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
 overflow-y: hidden;
 }
 }
}
@media all {
 @font-face {
 font-family: eicons;
 font-weight: 400;
 font-style: normal;
 font-display: block;
 src:
 url("../fonts/eicons.woff2")
 format("woff2"),
 url("../fonts/eicons.woff")
 format("woff");
 }
 [class*=" eicon-"] {
    display: inline-block;
 font-family: eicons;
 font-size: inherit;
 font-weight: 400;
 font-style: normal;
 font-variant: normal;
 line-height: 1;
 text-rendering: auto;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 }
 .eicon-menu-bar:before {
 content: "";
 }
 .eicon-close:before {
 content: "";
 }
}
@media all {
 .logo-sec a {
 display: flex !important;
 align-items: center !important;
 }
 .menu-main-sec li a {
 transform: translatey(0);
 transition: all 0.6s ease-out;
 color: #fff;
 }
 .menu-main-sec li.current-menu-item a {
 color: #fff !important;
 transform: translatey(12px);
 }
 .menu-main-sec li a:hover,
 .menu-main-sec li a:active {
 color: #fff !important;
 transform: translatey(12px);
 }
 .plan-room-sec {
 display: flex;
 align-items: center;
 }
 .plan-room-text {
 min-width: 157px;
 overflow: hidden;
 margin-right: 0.694vw;
 }
 .plan-room-text p {
 font-size: 22px;
 line-height: 22px;
 font-weight: 500;
  text-transform: uppercase;
 padding-left: 0.347vw;
 letter-spacing: 4.4px;
 transform: translateX(180px);
 color: #fff;
 font-family: "Chakra Petch";
 margin: 0;
 }
 .plan-room-text p a {
 color: #fff;
 font-family: ChakraPetch, Sans-serif;
 }
 .custom-btn {
 transform: translatey(0);
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent {
 position: relative;
 z-index: 1;
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent:after {
 background: #fff;
 width: 100%;
 height: 258px;
 content: "";
 z-index: -1;
 bottom: 0;
 position: absolute;
 }
 @media (max-width: 1700px) {
 .plan-room-text p {
 font-size: 18px;
 line-height: 1;
 }
 .desktop-logo svg {
 width: 25px;
 height: 25px;
 }
 .desktop-logo {
 padding-top: 5px;
 }
 .custom-btn .premium-image-button {
 width: 280px !important;
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent:after {
 height: 240px;
 }
 }
 @media (max-width: 1500px) {
 .plan-room-text {
 min-width: 140px;
 margin-right: 5px;
 }
 .plan-room-text p {
 font-size: 16px;
 line-height: 1;
 }
 .custom-btn .premium-image-button {
 width: 220px !important;
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent:after {
 height: 210px;
 }
 }
 @media (max-width: 1199px) {
 .plan-room-text {
 display: none;
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent:after {
 height: 150px;
 left: 0;
 }
 }
 @media (max-width: 767px) {
 .custom-btn .premium-image-button {
 width: 200px !important;
 }
 .featured-projects-main-sec.e-flex.e-con-boxed.e-con.e-parent:after {
 display: none;
 }
 }
}
@media all {
 .elementor-screen-only,
 .screen-reader-text {
 height: 1px;
 margin: -1px;
 overflow: hidden;
  padding: 0;
 position: absolute;
 top: -10000em;
 width: 1px;
 clip: rect(0, 0, 0, 0);
 border: 0;
 }
 .elementor *,
 .elementor :after,
 .elementor :before {
 box-sizing: border-box;
 }
 .elementor a {
 box-shadow: none;
 text-decoration: none;
 }
 .elementor img {
  border: none;
 border-radius: 0;
 box-shadow: none;
 height: auto;
 max-width: 100%;
 }
 .elementor-element {
 --flex-direction: initial;
 --flex-wrap: initial;
 --justify-content: initial;
 --align-items: initial;
 --align-content: initial;
 --flex-basis: initial;
 --flex-grow: initial;
 --flex-shrink: initial;
 --order: initial;
 --align-self: initial;
 align-self: var(--align-self);
 flex-basis: var(--flex-basis);
 flex-grow: var(--flex-grow);
 flex-shrink: var(--flex-shrink);
 order: var(--order);
 }
 .elementor-element:where(.e-con-full, .elementor-widget) {
 align-content: var(--align-content);
 align-items: var(--align-items);
 flex-direction: var(--flex-direction);
 flex-wrap: var(--flex-wrap);
 gap: var(--row-gap) var(--column-gap);
 justify-content: var(--justify-content);
 }
 .elementor-widget {
 position: relative;
 }
 .elementor-widget:not(:last-child) {
 margin-bottom: var(--kit-widget-spacing, 20px);
 }
 .elementor-widget:not(:last-child).elementor-widget__width-initial {
 margin-bottom: 0;
 }
 @media (prefers-reduced-motion: no-preference) {
 html {
 scroll-behavior: smooth;
 }
 }
 .e-con {
 --border-radius: 0;
 --border-top-width: 0px;
 --border-right-width: 0px;
 --border-bottom-width: 0px;
 --border-left-width: 0px;
 --border-style: initial;
 --border-color: initial;
 --container-widget-width: 100%;
 --container-widget-flex-grow: 0;
 --content-width: min(100%, var(--container-max-width, 1140px));
 --width: 100%;
 --min-height: initial;
 --height: auto;
 --text-align: initial;
 --margin-top: 0px;
 --margin-right: 0px;
 --margin-bottom: 0px;
 --margin-left: 0px;
 --padding-top: var(--container-default-padding-top, 10px);
 --padding-right: var(--container-default-padding-right, 10px);
 --padding-bottom: var(--container-default-padding-bottom, 10px);
 --padding-left: var(--container-default-padding-left, 10px);
 --position: relative;
 --z-index: revert;
 --overflow: visible;
 --row-gap: var(--widgets-spacing-row, 20px);
 --column-gap: var(--widgets-spacing-column, 20px);
 --overlay-mix-blend-mode: initial;
 --overlay-opacity: 1;
 border-radius: var(--border-radius);
 height: var(--height);
 min-height: var(--min-height);
 min-width: 0;
 overflow: var(--overflow);
 position: var(--position);
 width: var(--width);
 z-index: var(--z-index);
 --flex-wrap-mobile: wrap;
 margin-block-end: var(--margin-block-end);
 margin-block-start: var(--margin-block-start);
 margin-inline-end: var(--margin-inline-end);
 margin-inline-start: var(--margin-inline-start);
 padding-inline-end: var(--padding-inline-end);
 padding-inline-start: var(--padding-inline-start);
 }
 .e-con {
 --margin-block-start: var(--margin-top);
 --margin-block-end: var(--margin-bottom);
 --margin-inline-start: var(--margin-left);
 --margin-inline-end: var(--margin-right);
 --padding-inline-start: var(--padding-left);
 --padding-inline-end: var(--padding-right);
 --padding-block-start: var(--padding-top);
 --padding-block-end: var(--padding-bottom);
 --border-block-start-width: var(--border-top-width);
 --border-block-end-width: var(--border-bottom-width);
 --border-inline-start-width: var(--border-left-width);
 --border-inline-end-width: var(--border-right-width);
 }
 .e-con.e-flex {
 --flex-direction: column;
 --flex-basis: auto;
 --flex-grow: 0;
 --flex-shrink: 1;
 flex: var(--flex-grow) var(--flex-shrink) var(--flex-basis);
 }
 .e-con-full,
 .e-con > .e-con-inner {
 padding-block-end: var(--padding-block-end);
 padding-block-start: var(--padding-block-start);
 text-align: var(--text-align);
 }
 .e-con-full.e-flex,
 .e-con.e-flex > .e-con-inner {
 flex-direction: var(--flex-direction);
 }
 .e-con,
 .e-con > .e-con-inner {
 display: var(--display);
 }
 .e-con-boxed.e-flex {
 align-content: normal;
 align-items: normal;
      flex-direction: column;
 flex-wrap: nowrap;
 justify-content: normal;
 }
 .e-con-boxed {
 gap: initial;
 text-align: initial;
 }
 .e-con.e-flex > .e-con-inner {
 align-content: var(--align-content);
 align-items: var(--align-items);
 align-self: auto;
 flex-basis: auto;
 flex-grow: 1;
 flex-shrink: 1;
 flex-wrap: var(--flex-wrap);
 justify-content: var(--justify-content);
 }
 .e-con > .e-con-inner {
 gap: var(--row-gap) var(--column-gap);
 height: 100%;
 margin: 0 auto;
 max-width: var(--content-width);
 padding-inline-end: 0;
 padding-inline-start: 0;
      width: 100%;
 }
 :is(.elementor-section-wrap, [data-elementor-id]) > .e-con {
 --margin-left: auto;
 --margin-right: auto;
 max-width: min(100%, var(--width));
 }
 .e-con .elementor-widget.elementor-widget {
 margin-block-end: 0;
 }
 .e-con:before {
 border-block-end-width: var(--border-block-end-width);
 border-block-start-width: var(--border-block-start-width);
 border-color: var(--border-color);
 border-inline-end-width: var(--border-inline-end-width);
 border-inline-start-width: var(--border-inline-start-width);
 border-radius: var(--border-radius);
 border-style: var(--border-style);
 content: var(--background-overlay);
      display: block;
 left: calc(0px - var(--border-left-width));
 mix-blend-mode: var(--overlay-mix-blend-mode);
 opacity: var(--overlay-opacity);
 position: absolute;
 top: calc(0px - var(--border-top-width));
 }
 .e-con .elementor-widget {
 min-width: 0;
 }
 .e-con > .e-con-inner > .elementor-widget > .elementor-widget-container,
 .e-con > .elementor-widget > .elementor-widget-container {
 height: 100%;
 }
 .e-con.e-con > .e-con-inner > .elementor-widget,
 .elementor.elementor .e-con > .elementor-widget {
 max-width: 100%;
 }
 .e-con .elementor-widget:not(:last-child) {
 --kit-widget-spacing: 0px;
 }
 @media (max-width: 767px) {
 .e-con.e-flex {
 --width: 100%;
 --flex-wrap: var(--flex-wrap-mobile);
 }
 }
 @media (max-width: 767px) {
 .elementor .elementor-hidden-mobile {
 display: none;
 }
 }
 @media (min-width: 768px) and (max-width: 1199px) {
 .elementor .elementor-hidden-tablet {
 display: none;
 }
 }
 @media (min-width: 1200px) and (max-width: 1500px) {
 .elementor .elementor-hidden-tablet_extra {
 display: none;
 }
 }
 @media (min-width: 1501px) and (max-width: 1700px) {
 .elementor .elementor-hidden-laptop {
 display: none;
 }
 }
 @media (min-width: 1701px) and (max-width: 99999px) {
 .elementor .elementor-hidden-desktop {
 display: none;
 }
 }
}
/* Header: explicit hover, focus, active (e--pointer-none on live site — visual states here) */

.elementor-location-header .elementor-nav-menu--main .elementor-item {
 transition:
 color 0.2s ease,
 opacity 0.2s ease;
}
.elementor-43
 .elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item:hover,
.elementor-43
 .elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item:focus-visible {
 color: #fff;
 fill: #fff;
 opacity: 1;
}
.elementor-43
 .elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item.elementor-item-active,
.elementor-43
 .elementor-element-eacde70
 .elementor-nav-menu--main
 .elementor-item.highlighted {
 color: #fff;
 fill: #fff;
}
.elementor-43 .elementor-menu-toggle {
 cursor: pointer;
 transition:
 background-color 0.2s ease,
 color 0.2s ease,
 opacity 0.2s ease;
}
.elementor-43 .elementor-menu-toggle:hover,
.elementor-43 .elementor-menu-toggle:focus-visible {
 background-color: rgba(255, 255, 255, 0.12);
 outline: 2px solid rgba(255, 255, 255, 0.5);
 outline-offset: 2px;
}
.elementor-43 .elementor-menu-toggle.elementor-active {
 background-color: rgba(255, 255, 255, 0.15);
}
.elementor-43 .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-43 .elementor-nav-menu--dropdown .elementor-item:focus-visible {
 background-color: rgba(177, 36, 53, 0.08);
 color: #1b2e3c;
}
.elementor-43 .logo-sec a:hover img {
 opacity: 0.92;
}
.elementor-43 .logo-sec a:focus-visible {
 outline: 2px solid rgba(255, 255, 255, 0.6);
 outline-offset: 4px;
 border-radius: 2px;
}
.elementor-43 .plan-room-text p a:hover {
 text-decoration: underline;
 text-underline-offset: 3px;
}
.elementor-43 .plan-room-text p a:focus-visible {
 outline: 2px solid #fff;
 outline-offset: 3px;
}
.elementor-43 .desktop-logo:hover svg path {
 fill: #fff;
}
.elementor-43 .desktop-logo:focus-visible {
 outline: 2px solid rgba(255, 255, 255, 0.7);
 outline-offset: 4px;
 border-radius: 4px;
}
.elementor-43
 .elementor-menu-toggle.elementor-active
 .elementor-menu-toggle__icon--open {
      display: none;
    }
.elementor-43
 .elementor-menu-toggle.elementor-active
 .elementor-menu-toggle__icon--close {
 display: block;
}

/* --- Responsive: stop horizontal scroll on mobile / narrow viewports --- */
html.mckee-header-standalone-root,
html.mckee-header-standalone-root body {
 overflow-x: hidden;
 max-width: 100%;
}
.elementor-location-header {
 max-width: 100%;
 box-sizing: border-box;
}
.elementor-location-header .elementor-element.elementor-element-c9f85bd {
 max-width: 100%;
 box-sizing: border-box;
}
.elementor-location-header .e-con.e-parent,
.elementor-location-header .e-con.e-child {
 min-width: 0;
 max-width: 100%;
}
.elementor-location-header
 .elementor-widget-nav-menu
 .elementor-widget-container {
 min-width: 0;
 max-width: 100%;
 position: relative;
}
@media (max-width: 1199px) {
 /* Mirrored “PLAN ROOM” animation used translateX(180px); it widens the layout off-screen */
 .elementor-location-header .plan-room-text p {
 transform: none;
 }
}
@media (max-width: 767px) {
 .elementor-43 .elementor-element.elementor-element-c9f85bd {
 --padding-left: clamp(12px, 4vw, 20px);
 --padding-right: clamp(12px, 4vw, 20px);
 }
}
body.mckee-header-standalone #demo-main {
 overflow-wrap: break-word;
 word-break: break-word;
}

/* --- Mobile / tablet (≤1199px): match reference — dark bar (logo | close), white link stack --- */
@media (max-width: 1199px) {
 html:has(.elementor-location-header .elementor-menu-toggle.elementor-active),
 html.mckee-nav-open {
 overflow: hidden;
 }

 .elementor-location-header {
 position: relative;
 }

 .elementor-location-header .elementor-element.elementor-element-c9f85bd {
 position: relative;
 display: grid;
 grid-template-columns: 1fr auto;
 grid-template-rows: auto;
 align-items: center;
 column-gap: 12px;
 }

 /* Flatten nav column so the dropdown can span full width (positioned under the bar) */
 .elementor-location-header .elementor-element.elementor-element-e11e34f,
 .elementor-location-header
 .elementor-element.elementor-element-e11e34f
 > .elementor-widget-nav-menu,
 .elementor-location-header
 .elementor-element.elementor-element-e11e34f
 .elementor-widget-nav-menu
 > .elementor-widget-container {
 display: contents;
 }

 .elementor-location-header
 .elementor-element.elementor-element-c9f85bd
 > .elementor-element-0f641d4 {
 display: none !important;
 }

 .elementor-location-header .elementor-element.elementor-element-9cd7f26 {
 grid-column: 1;
 grid-row: 1;
 align-self: center;
 }

 .elementor-location-header
 .elementor-nav-menu--dropdown-tablet
 .elementor-nav-menu--main {
 display: none !important;
 }

 .elementor-location-header
 .elementor-element.elementor-element-c9f85bd
 .elementor-menu-toggle {
 grid-column: 2;
 grid-row: 1;
 justify-self: end;
 align-self: center;
 width: 44px;
 height: 44px;
 min-width: 44px;
 min-height: 44px;
 border-radius: 4px;
 background: rgba(255, 255, 255, 0.06);
 border: 1px solid rgba(255, 255, 255, 0.25);
 color: #fff;
 }

 .elementor-location-header
 .elementor-menu-toggle
 .elementor-menu-toggle__icon--open:before,
 .elementor-location-header
 .elementor-menu-toggle
 .elementor-menu-toggle__icon--close:before {
 color: #fff;
 }

 /* Open = close control: gold border, white X (reference) */
 .elementor-location-header .elementor-menu-toggle.elementor-active {
 background: rgba(0, 0, 0, 0.15);
 border: 1px solid #e8a623;
 color: #fff;
 }

 .elementor-location-header
 .elementor-element.elementor-element-c9f85bd:has(
 .elementor-menu-toggle.elementor-active
 ) {
 overflow: visible;
 z-index: 10001;
 }

 /* Menu panel overlays below the bar — bar height stays the same open or closed */
 .elementor-location-header
 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
 position: absolute !important;
 left: 0 !important;
 right: 0 !important;
 top: 100% !important;
 width: 100% !important;
 max-width: 100% !important;
 margin: 0 !important;
 box-sizing: border-box;
 padding: 8px 0 28px;
 background: #fff !important;
 border-top: 1px solid rgba(0, 0, 0, 0.12);
 box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
 z-index: 10002;
 transform-origin: top center;
 }

 .elementor-location-header
 .elementor-menu-toggle:not(.elementor-active)
 ~ .elementor-nav-menu--dropdown {
 max-height: 0 !important;
 padding-top: 0 !important;
 padding-bottom: 0 !important;
 overflow: hidden !important;
 visibility: hidden;
 pointer-events: none;
 border-top: 0 !important;
 box-shadow: none !important;
 transform: scaleY(0) !important;
 }

 .elementor-location-header
 .elementor-menu-toggle.elementor-active
 ~ .elementor-nav-menu--dropdown {
 visibility: visible;
 pointer-events: auto;
 transform: none !important;
 max-height: min(75vh, 560px) !important;
 overflow-y: auto !important;
 }

 .elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu {
 display: flex !important;
 flex-direction: column;
 align-items: stretch;
 }

 .elementor-location-header
 .elementor-nav-menu--dropdown
 .elementor-nav-menu
 > li {
 border-bottom: 1px solid rgba(0, 0, 0, 0.06);
 }

 .elementor-location-header
 .elementor-nav-menu--dropdown
 .elementor-nav-menu
 > li:last-child {
 border-bottom: 0;
 }

 .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item {
 color: #b12435 !important;
 fill: #b12435 !important;
 font-family: ChakraPetch, "Chakra Petch", sans-serif !important;
 font-weight: 700 !important;
 font-size: 1rem !important;
 letter-spacing: 0.06em !important;
 text-transform: uppercase !important;
 padding: 18px 24px !important;
 line-height: 1.25 !important;
 justify-content: flex-start !important;
 white-space: normal !important;
 }

 .elementor-location-header
 .elementor-nav-menu--dropdown
 a.elementor-item:hover,
 .elementor-location-header
 .elementor-nav-menu--dropdown
 a.elementor-item:focus-visible {
 background: rgba(177, 36, 53, 0.06) !important;
 color: #8b1c2a !important;
 }

 .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item.elementor-item-active,
 .elementor-location-header
 .elementor-nav-menu--dropdown
 li.current-menu-item
 a.elementor-item {
 transform: none !important;
 background: rgba(177, 36, 53, 0.12) !important;
 color: #1b2e3c !important;
 }

 /* Logo bar: compact wordmark feel */
 .elementor-location-header .elementor-element.elementor-element-b4a90b1 img {
 max-height: 40px;
 width: auto;
 }

 .menu-main-sec li.current-menu-item a,
 .menu-main-sec li a:hover,
 .menu-main-sec li a:active {
 transform: none !important;
 }
}

#navbarList {
 color: rgb(51, 51, 51);
 border-radius: 0;
      display: flex;
 justify-content: flex-start;
 align-items: flex-start;
 align-content: flex-start;
 flex-wrap: nowrap;
}
ul#navbarList li a {
 font-size: 16px !important; 
}

/* ===== Footer ===== */
html{line-height:1.15;-webkit-text-size-adjust:100%}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background-color:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;-webkit-font-smoothing:antialiased}
a{background-color:transparent;color:inherit;text-decoration:none}
img{max-width:100%;height:auto;border:0;display:inline-block;vertical-align:middle}
ul,li{margin:0;padding:0;list-style:none}


@media all{@font-face{font-family:eicons;font-weight:400;font-style:normal;font-display:block;src:url("../fonts/eicons.woff2") format("woff2"),url("../fonts/eicons.woff") format("woff")}[class*=" eicon-"]{display:inline-block;font-family:eicons;font-size:inherit;font-weight:400;font-style:normal;font-variant:normal;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}

@media all{.elementor-widget-image{text-align:center;}.elementor-widget-image a{display:inline-block;}.elementor-widget-image img{display:inline-block;vertical-align:middle;}}
@media all{.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute !important;width:1px;word-wrap:normal !important;}}
@media all{.elementor-kit-6{color:#6d7479;font-family:AvenirLTStd,Sans-serif;font-size:22px;font-weight:500;line-height:1.5em;}.elementor-kit-6 h1{color:#fff;font-family:"Peckham Press Trial",Sans-serif;font-size:160px;font-weight:400;line-height:1.1em;}.elementor-kit-6 h2{color:#1b2e3c;font-family:ChakraPetch,Sans-serif;font-size:130px;font-weight:700;text-transform:uppercase;line-height:1.1em;}.e-con{--container-max-width:1566px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing-row:20px;--widgets-spacing-column:20px;}@media (max-width:1700px){.e-con{--container-max-width:1400px;}}@media (max-width:1500px){.e-con{--container-max-width:1180px;}}}
@media all{.elementor-55 .elementor-element.elementor-element-9de211b .elementor-nav-menu .elementor-item{font-family:ChakraPetch,Sans-serif;font-size:22px;font-weight:500;text-transform:uppercase;line-height:1.1em;letter-spacing:4.4px;}.elementor-location-header:before{content:"";display:table;clear:both;}@media (max-width:1700px){.elementor-55 .elementor-element.elementor-element-9de211b .elementor-nav-menu .elementor-item{font-size:20px;letter-spacing:4.2px;}}@media (max-width:1500px){.elementor-55 .elementor-element.elementor-element-9de211b .elementor-nav-menu .elementor-item{font-size:18px;line-height:.8em;letter-spacing:3px;}}@media (max-width:1199px){.elementor-55 .elementor-element.elementor-element-9de211b .elementor-nav-menu .elementor-item{font-size:16px;line-height:.5em;}}}
@media all{.elementor-item:after,.elementor-item:before{display:block;position:absolute;}.elementor-item:not(:hover):not(:focus):not(.elementor-item-active):not(.highlighted):after,.elementor-item:not(:hover):not(:focus):not(.elementor-item-active):not(.highlighted):before{opacity:0;}.elementor-nav-menu--main .elementor-nav-menu a{padding:13px 20px;}.elementor-nav-menu--layout-horizontal{display:flex;}.elementor-nav-menu--layout-horizontal .elementor-nav-menu{display:flex;flex-wrap:wrap;}.elementor-nav-menu--layout-horizontal .elementor-nav-menu a{flex-grow:1;white-space:nowrap;}.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li{display:flex;}.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:first-child)>a{margin-inline-start:var(--e-nav-menu-horizontal-menu-item-margin);}.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:last-child)>a{margin-inline-end:var(--e-nav-menu-horizontal-menu-item-margin);}.elementor-nav-menu--layout-horizontal .elementor-nav-menu>li:not(:last-child):after{align-self:center;border-color:var(--e-nav-menu-divider-color,#000);border-left-style:var(--e-nav-menu-divider-style,solid);border-left-width:var(--e-nav-menu-divider-width,2px);content:var(--e-nav-menu-divider-content,none);height:var(--e-nav-menu-divider-height,35%);}.elementor-nav-menu__align-end .elementor-nav-menu{justify-content:flex-end;margin-inline-start:auto;}.elementor-widget-nav-menu .elementor-widget-container{display:flex;flex-direction:column;}.elementor-nav-menu{position:relative;z-index:2;}.elementor-nav-menu:after{clear:both;content:" ";display:block;font:0/0 serif;height:0;overflow:hidden;visibility:hidden;}.elementor-nav-menu,.elementor-nav-menu li{display:block;line-height:normal;list-style:none;margin:0;padding:0;}.elementor-nav-menu a,.elementor-nav-menu li{position:relative;}.elementor-nav-menu li{border-width:0;}.elementor-nav-menu a{align-items:center;display:flex;}.elementor-nav-menu a{line-height:20px;padding:10px 20px;}.elementor-menu-toggle{align-items:center;background-color:rgba(0,0,0,.05);border:0 solid;border-radius:3px;color:#33373d;display:flex;font-size:var(--nav-menu-icon-size,22px);justify-content:center;padding:.25em;}.elementor-menu-toggle:not(.elementor-active) .elementor-menu-toggle__icon--close{display:none;}.elementor-nav-menu--dropdown{background-color:#fff;font-size:13px;}.elementor-nav-menu--dropdown-none .elementor-nav-menu--dropdown{display:none;}.elementor-nav-menu--dropdown.elementor-nav-menu__container{margin-top:10px;overflow-x:hidden;overflow-y:auto;transform-origin:top;}.elementor-nav-menu--dropdown a{color:#33373d;}.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active)+.elementor-nav-menu__container{max-height:0;overflow:hidden;transform:scaleY(0);}.elementor-nav-menu--stretch .elementor-nav-menu__container.elementor-nav-menu--dropdown{position:absolute;z-index:9997;}@media (max-width:1199px){.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--main{display:none;}}@media (min-width:1200px){.elementor-nav-menu--dropdown-tablet .elementor-menu-toggle,.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown{display:none;}.elementor-nav-menu--dropdown-tablet nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{overflow-y:hidden;}}}
@media all{.elementor-screen-only,.screen-reader-text{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;top:-10000em;width:1px;clip:rect(0,0,0,0);border:0;}.elementor *,.elementor :after,.elementor :before{box-sizing:border-box;}.elementor a{box-shadow:none;text-decoration:none;}.elementor img{border:none;border-radius:0;box-shadow:none;height:auto;max-width:100%;}.elementor-element{--flex-direction:initial;--flex-wrap:initial;--justify-content:initial;--align-items:initial;--align-content:initial;--flex-basis:initial;--flex-grow:initial;--flex-shrink:initial;--order:initial;--align-self:initial;align-self:var(--align-self);flex-basis:var(--flex-basis);flex-grow:var(--flex-grow);flex-shrink:var(--flex-shrink);order:var(--order);}.elementor-element:where(.e-con-full,.elementor-widget){align-content:var(--align-content);align-items:var(--align-items);flex-direction:var(--flex-direction);flex-wrap:var(--flex-wrap);gap:var(--row-gap) var(--column-gap);justify-content:var(--justify-content);}.elementor-widget{position:relative;}.elementor-widget:not(:last-child){margin-bottom:var(--kit-widget-spacing,20px);}.elementor-widget:not(:last-child).elementor-widget__width-initial{margin-bottom:0;}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth;}}.e-con{--border-radius:0;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--border-style:initial;--border-color:initial;--container-widget-width:100%;--container-widget-flex-grow:0;--content-width:min(100%,var(--container-max-width,1140px));--width:100%;--min-height:initial;--height:auto;--text-align:initial;--margin-top:0px;--margin-right:0px;--margin-bottom:0px;--margin-left:0px;--padding-top:var(--container-default-padding-top,10px);--padding-right:var(--container-default-padding-right,10px);--padding-bottom:var(--container-default-padding-bottom,10px);--padding-left:var(--container-default-padding-left,10px);--position:relative;--z-index:revert;--overflow:visible;--row-gap:var(--widgets-spacing-row,20px);--column-gap:var(--widgets-spacing-column,20px);--overlay-mix-blend-mode:initial;--overlay-opacity:1;border-radius:var(--border-radius);height:var(--height);min-height:var(--min-height);min-width:0;overflow:var(--overflow);position:var(--position);width:var(--width);z-index:var(--z-index);--flex-wrap-mobile:wrap;margin-block-end:var(--margin-block-end);margin-block-start:var(--margin-block-start);margin-inline-end:var(--margin-inline-end);margin-inline-start:var(--margin-inline-start);padding-inline-end:var(--padding-inline-end);padding-inline-start:var(--padding-inline-start);}.e-con{--margin-block-start:var(--margin-top);--margin-block-end:var(--margin-bottom);--margin-inline-start:var(--margin-left);--margin-inline-end:var(--margin-right);--padding-inline-start:var(--padding-left);--padding-inline-end:var(--padding-right);--padding-block-start:var(--padding-top);--padding-block-end:var(--padding-bottom);--border-block-start-width:var(--border-top-width);--border-block-end-width:var(--border-bottom-width);--border-inline-start-width:var(--border-left-width);--border-inline-end-width:var(--border-right-width);}.e-con.e-flex{--flex-direction:column;--flex-basis:auto;--flex-grow:0;--flex-shrink:1;flex:var(--flex-grow) var(--flex-shrink) var(--flex-basis);}.e-con-full,.e-con>.e-con-inner{padding-block-end:var(--padding-block-end);padding-block-start:var(--padding-block-start);text-align:var(--text-align);}.e-con-full.e-flex,.e-con.e-flex>.e-con-inner{flex-direction:var(--flex-direction);}.e-con,.e-con>.e-con-inner{display:var(--display);}.e-con-boxed.e-flex{align-content:normal;align-items:normal;flex-direction:column;flex-wrap:nowrap;justify-content:normal;}.e-con-boxed{gap:initial;text-align:initial;}.e-con.e-flex>.e-con-inner{align-content:var(--align-content);align-items:var(--align-items);align-self:auto;flex-basis:auto;flex-grow:1;flex-shrink:1;flex-wrap:var(--flex-wrap);justify-content:var(--justify-content);}.e-con>.e-con-inner{gap:var(--row-gap) var(--column-gap);height:100%;margin:0 auto;max-width:var(--content-width);padding-inline-end:0;padding-inline-start:0;width:100%;}:is(.elementor-section-wrap,[data-elementor-id])>.e-con{--margin-left:auto;--margin-right:auto;max-width:min(100%,var(--width));}.e-con .elementor-widget.elementor-widget{margin-block-end:0;}.e-con:before{border-block-end-width:var(--border-block-end-width);border-block-start-width:var(--border-block-start-width);border-color:var(--border-color);border-inline-end-width:var(--border-inline-end-width);border-inline-start-width:var(--border-inline-start-width);border-radius:var(--border-radius);border-style:var(--border-style);content:var(--background-overlay);display:block;left:calc(0px - var(--border-left-width));mix-blend-mode:var(--overlay-mix-blend-mode);opacity:var(--overlay-opacity);position:absolute;top:calc(0px - var(--border-top-width));}.e-con .elementor-widget{min-width:0;}.e-con>.e-con-inner>.elementor-widget>.elementor-widget-container,.e-con>.elementor-widget>.elementor-widget-container{height:100%;}.e-con.e-con>.e-con-inner>.elementor-widget,.elementor.elementor .e-con>.elementor-widget{max-width:100%;}.e-con .elementor-widget:not(:last-child){--kit-widget-spacing:0px;}@media (max-width:767px){.e-con.e-flex{--width:100%;--flex-wrap:var(--flex-wrap-mobile);}}@media (max-width:767px){.elementor .elementor-hidden-mobile{display:none;}}@media (min-width:768px) and (max-width:1199px){.elementor .elementor-hidden-tablet{display:none;}}@media (min-width:1200px) and (max-width:1500px){.elementor .elementor-hidden-tablet_extra{display:none;}}@media (min-width:1501px) and (max-width:1700px){.elementor .elementor-hidden-laptop{display:none;}}@media (min-width:1701px) and (max-width:99999px){.elementor .elementor-hidden-desktop{display:none;}}}
/* Footer polish + responsive */
.elementor-location-footer{max-width:100%;box-sizing:border-box}
.elementor-location-footer .e-con.e-parent,.elementor-location-footer .e-con.e-child{min-width:0;max-width:100%}
.elementor-location-footer .elementor-nav-menu--layout-vertical .elementor-item{transition:color .2s ease,opacity .2s ease}
.elementor-location-footer .elementor-55 .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-footer .elementor-55 .elementor-nav-menu--main .elementor-item:focus-visible{color:#fff;opacity:.9}
.elementor-location-footer .elementor-social-icon:hover{opacity:.88}
.elementor-location-footer .elementor-social-icon:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:2px;border-radius:4px}
@media (max-width:1199px){
  .elementor-location-footer .elementor-element-38cc1a3 .e-con-inner{flex-wrap:wrap}
}
@media (max-width:767px){
  .elementor-location-footer .elementor-element-38cc1a3{--padding-left:clamp(12px,4vw,24px);--padding-right:clamp(12px,4vw,24px)}
  .elementor-location-footer .elementor-element-835e64f .e-con-inner{text-align:left;justify-content:flex-start}
}

/* Backgrounds + layout (Elementor post CSS on live site — not in Jetpack critical) */
.elementor-location-footer.elementor-55 .elementor-element-38cc1a3:not(.elementor-motion-effects-element-type-background),
.elementor-location-footer.elementor-55 .elementor-element-38cc1a3 {
	background-color: #1a2b3c !important;
}
.elementor-location-footer.elementor-55 .elementor-element-38cc1a3 > .e-con-inner {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	column-gap: 48px;
	row-gap: 32px;
	padding-top: 48px;
	padding-bottom: 48px;
	padding-left: clamp(16px, 4vw, 48px);
	padding-right: clamp(16px, 4vw, 48px);
}
/* Left column: vertical stack; undo Elementor height:100% on .elementor-widget-container (causes logo/text overlap) */
.elementor-location-footer.elementor-55 .elementor-element-6e7bda6 {
	flex: 1 1 260px;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 16px;
	row-gap: 16px;
	column-gap: 0;
}
.elementor-location-footer.elementor-55 .elementor-element-6e7bda6 > .elementor-widget > .elementor-widget-container {
	height: auto !important;
	min-height: 0;
}
.elementor-location-footer.elementor-55 .elementor-element-6e7bda6 > .elementor-element {
	align-self: flex-start;
	width: 100%;
	max-width: 100%;
}
.elementor-location-footer.elementor-55 .elementor-element-4d9b845.elementor-widget-image {
	text-align: left;
}
.elementor-location-footer.elementor-55 .elementor-element-4d9b845 .elementor-widget-container {
	text-align: left;
}
.elementor-location-footer.elementor-55 .elementor-element-4d9b845 img {
	max-width: 220px;
	width: auto;
	height: auto;
	display: block;
}
.elementor-location-footer.elementor-55 .elementor-element-cf3bda8 {
      width: 100%;
	max-width: 360px;
}
.elementor-location-footer.elementor-55 .elementor-element-cf3bda8 .elementor-widget-container,
.elementor-location-footer.elementor-55 .elementor-element-cf3bda8 p,
.elementor-location-footer.elementor-55 .elementor-element-cf3bda8 a {
	color: #fff !important;
}
.elementor-location-footer.elementor-55 .elementor-element-cf3bda8 .elementor-widget-container {
	font-family: AvenirLTStd, "Avenir LT Std", sans-serif;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.55;
}
.elementor-location-footer.elementor-55 .elementor-element-eb20f54 .elementor-social-icons-wrapper {
	gap: 12px;
}
.elementor-location-footer.elementor-55 .elementor-element-403484a {
	flex: 0 1 320px;
	min-width: 0;
	margin-left: auto;
}
.elementor-location-footer.elementor-55 .elementor-element-9de211b .elementor-nav-menu--layout-vertical .elementor-nav-menu {
	width: 100%;
}
.elementor-location-footer.elementor-55 .elementor-element-9de211b .elementor-nav-menu--layout-vertical a.elementor-item {
	color: #fff !important;
	fill: #fff !important;
	justify-content: flex-end;
	text-align: right;
	padding: 10px 0 10px 12px;
}
.elementor-location-footer.elementor-55 .elementor-nav-menu__align-end .elementor-nav-menu {
	margin-inline-start: auto;
      width: 100%;
}
@media (max-width: 767px) {
	.elementor-location-footer.elementor-55 .elementor-element-9de211b .elementor-nav-menu--layout-vertical a.elementor-item {
		justify-content: flex-start;
		text-align: left;
	}
	.elementor-location-footer.elementor-55 .elementor-element-403484a {
		margin-left: 0;
		flex: 1 1 100%;
	}
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f:not(.elementor-motion-effects-element-type-background),
.elementor-location-footer.elementor-55 .elementor-element-835e64f {
	background-color: #0f172a !important;
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f > .e-con-inner {
            display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	align-content: center;
	gap: 0.35em 0.65em;
	padding-top: 14px;
	padding-bottom: 14px;
	padding-left: clamp(16px, 4vw, 48px);
	padding-right: clamp(16px, 4vw, 48px);
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f .elementor-widget-container {
	color: #fff !important;
	font-family: AvenirLTStd, "Avenir LT Std", sans-serif;
	font-size: 15px;
	font-weight: 400;
	text-align: left;
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f p {
	margin: 0;
	color: inherit;
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f .mckee-footer-copyright-line {
	margin: 0;
	line-height: 1.45;
}
.elementor-location-footer.elementor-55 .elementor-element-835e64f .elementor-element-8f84262 {
	margin-bottom: 0;
	flex: 0 1 auto;
            width: 100%;
	max-width: 100%;
}
html.mckee-footer-standalone-root,
html.mckee-footer-standalone-root body {
	overflow-x: hidden;
	max-width: 100%;
}

/* Elementor frontend.js sets --display on .e-con; without it, flex/grid rules can collapse layout in some browsers */
.mckee-footer-standalone-root .elementor-location-footer.elementor-55 .e-con {
	--display: flex;
            display: flex;
}
.mckee-footer-standalone-root .elementor-location-footer.elementor-55 .e-con > .e-con-inner {
	--display: flex;
}
.mckee-footer-standalone-root .elementor-location-footer.elementor-55 {
	display: block;
	width: 100%;
	min-height: 1px;
          }

/* Index — Our Services block (shared 1392px wrapper) */
.elementor-2 .our-services-wrap {
	width: 100%;
	max-width: 1392px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 30px;
	padding-right: 30px;
	box-sizing: border-box;
}

.elementor-2 .our-services-wrap .elementor-element-a8bbff8,
.elementor-2 .our-services-wrap .elementor-element-d38cdc4 {
	max-width: 100%;
	width: 100%;
	box-sizing: border-box;
	--padding-left: 0 !important;
	--padding-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/*
 * Elementor export puts --display / row flex on these containers only inside
 * max-width:767px; desktop relies on elementor-frontend.js. Restore layout in CSS.
 */
@media (min-width: 768px) {
	.elementor-2 .our-services-wrap .elementor-element-a8bbff8,
	.elementor-2 .our-services-wrap .elementor-element-a8bbff8 > .e-con-inner,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner {
		--display: flex;
		display: flex;
	}

	.elementor-2 .our-services-wrap .elementor-element-a8bbff8 > .e-con-inner,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner {
		--content-width: 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		box-sizing: border-box;
	}

	.elementor-2 .our-services-wrap .elementor-element-a8bbff8 > .e-con-inner {
		display: block !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-967b240 {
		--display: flex;
		display: flex !important;
		--flex-direction: column;
		flex-direction: column;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		flex: none !important;
		min-width: 0;
		--margin-left: 0 !important;
		--margin-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-bd8fcb0 {
		display: none !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		justify-content: space-between !important;
		gap: 32px !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner > .e-con,
	.elementor-2 .our-services-wrap .our-services-box-sec .service-box-grid,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-68f9d5e,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-d8479bb,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-74403c4 {
		--display: flex;
		display: flex !important;
		--flex-direction: column;
		flex-direction: column !important;
		flex: 1 1 0 !important;
		flex-basis: 0 !important;
		flex-grow: 1 !important;
		flex-shrink: 1 !important;
		width: 0 !important;
		min-width: 0 !important;
		max-width: none !important;
		--width: 100% !important;
		--margin-top: 0 !important;
		--margin-bottom: 0 !important;
		--margin-left: 0 !important;
		--margin-right: 0 !important;
		margin: 0 !important;
	}

	.elementor-2 .our-services-wrap .our-services-box-sec .service-box-text .elementor-image-box-content {
		padding: 46px 46px 49px;
		box-sizing: border-box;
	}
}

@media (min-width: 1452px) {
	.elementor-2 .our-services-wrap {
		padding-left: 0;
		padding-right: 0;
	}
}

@media (min-width: 1200px) {
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner {
		gap: 32px !important;
	}
}

/* Final override — Elementor sets --width:50% and margins on each card */
@media (min-width: 768px) {
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner > .elementor-element-68f9d5e,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner > .elementor-element-d8479bb,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner > .elementor-element-74403c4 {
		flex: 1 1 0 !important;
		width: 0 !important;
		min-width: 0 !important;
		max-width: none !important;
		--width: 100% !important;
		margin: 0 !important;
		--margin-left: 0 !important;
		--margin-right: 0 !important;
		--margin-top: 0 !important;
		--margin-bottom: 0 !important;
	}
}

@media (max-width: 1199px) {
	.elementor-2 .our-services-wrap .elementor-element-a8bbff8 > .e-con-inner {
		display: block !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: wrap;
		gap: 20px;
	}

	.elementor-2 .our-services-wrap .elementor-element-967b240 {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	.elementor-2 .our-services-wrap .elementor-element-bd8fcb0 {
		display: none !important;
	}

	.elementor-2 .our-services-wrap .our-services-box-sec .service-box-grid,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-68f9d5e,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-d8479bb,
	.elementor-2 .our-services-wrap .our-services-box-sec .elementor-element-74403c4,
	.elementor-2 .our-services-wrap .elementor-element-d38cdc4 > .e-con-inner > .e-con {
		--margin-left: 0;
		--margin-right: 0;
		margin: 0;
		--width: 100%;
		flex: 1 1 100% !important;
		flex-basis: auto !important;
		width: 100% !important;
		max-width: 100%;
	}

	.elementor-2 .our-services-wrap .our-services-box-sec .service-box-text .elementor-image-box-content {
		padding: 15px 20px 30px;
	}
}

/* Legacy selectors kept for specificity fallback */
.elementor-2 .elementor-element.elementor-element-a8bbff8,
.elementor-2 .elementor-element.elementor-element-d38cdc4 {
	max-width: 100%;
	box-sizing: border-box;
}

@media (min-width: 768px) {
	.elementor-2 .elementor-element.elementor-element-a8bbff8 > .e-con-inner,
	.elementor-2 .elementor-element.elementor-element-d38cdc4 > .e-con-inner {
		--content-width: 100%;
		max-width: 100%;
	}
}

@media (max-width: 1199px) {
	.elementor-2 .elementor-element.elementor-element-a8bbff8,
	.elementor-2 .elementor-element.elementor-element-d38cdc4 {
		--padding-left: 0;
		--padding-right: 0;
	}
}

@media (max-width: 1199px) {
	.elementor-2 .elementor-element.elementor-element-a8bbff8 > .e-con-inner {
		--flex-direction: column;
		flex-direction: column;
		flex-wrap: wrap;
	}

	.elementor-2 .elementor-element.elementor-element-d38cdc4 {
		--content-width: 100%;
	}
}

/* Services page — prevent horizontal overflow on tablet/mobile */
.elementor-17 .e-con.e-parent,
.elementor-17 .e-con.e-child {
	max-width: 100%;
	box-sizing: border-box;
}

.elementor-17 .service-sec-grid {
	min-width: 0;
	max-width: 100%;
}

.elementor-17 .service-sec-grid img {
	width: 100%;
	height: auto;
}

@media (max-width: 767px) {
	.elementor-17 .elementor-element.elementor-element-69f7055,
	.elementor-17 .elementor-element.elementor-element-d22a9ce,
	.elementor-17 .elementor-element.elementor-element-f34bebc,
	.elementor-17 .elementor-element.elementor-element-7250c53 {
		--width: 100%;
		--padding-left: clamp(16px, 4vw, 20px);
		--padding-right: clamp(16px, 4vw, 20px);
	}

	.elementor-17 .service-sec-grid {
		--width: 100%;
		flex: 1 1 100%;
	}

	.elementor-17 .service-inner-page-banner .s-banner-des {
		width: 100%;
	}
}

/* Shared inner-page responsive fixes (about, safety, careers, contact, projects) */
.elementor-20 .e-con.e-parent,
.elementor-20 .e-con.e-child,
.elementor-22 .e-con.e-parent,
.elementor-22 .e-con.e-child,
.elementor-24 .e-con.e-parent,
.elementor-24 .e-con.e-child,
.elementor-27 .e-con.e-parent,
.elementor-27 .e-con.e-child,
.elementor-14 .e-con.e-parent,
.elementor-14 .e-con.e-child,
.elementor-896 .e-con.e-parent,
.elementor-896 .e-con.e-child {
	max-width: 100%;
	box-sizing: border-box;
	min-width: 0;
}

.elementor-20 img,
.elementor-22 img,
.elementor-24 img,
.elementor-27 img,
.elementor-14 img,
.elementor-896 img {
	max-width: 100%;
	height: auto;
}

.elementor-27 .elementor-custom-embed,
.elementor-27 .elementor-custom-embed iframe {
	width: 100%;
	max-width: 100%;
}

@media (max-width: 1199px) {
	.elementor-20 .elementor-element.elementor-element-bb5698d > .e-con-inner {
		flex-wrap: wrap;
	}
}

@media (max-width: 767px) {
	.about-inner-page-banner .s-banner-des,
	.service-inner-page-banner .s-banner-des,
	.safety-banner-sec .s-banner-des,
	.careers-page-banner .s-banner-des {
		width: 100%;
	}

	/* Contact: form fields + map stack */
	.elementor-27 .elementor-element.elementor-element-b7fe3f4 > .e-con-inner {
		flex-wrap: wrap;
	}

	.elementor-27 .elementor-element.elementor-element-c2546fb,
	.elementor-27 .elementor-element.elementor-element-ee66216 {
		--width: 100%;
		flex: 1 1 100%;
		max-width: 100%;
	}

	.form-rows-container {
		grid-template-columns: 1fr !important;
	}

	#i80x5y.w-50,
	.submit-btn-size.w-50 {
		width: 100% !important;
	}

	/* Safety: EMR + image columns stack */
	.elementor-22 .elementor-element.elementor-element-edfecfc,
	.elementor-22 .elementor-element.elementor-element-627786a,
	.elementor-22 .elementor-element.elementor-element-451dda6,
	.elementor-22 .elementor-element.elementor-element-431a102 {
		--width: 100%;
		flex: 1 1 100%;
		max-width: 100%;
	}

	/* Careers loop cards */
	.elementor-881 .premium-image-button {
		width: 100% !important;
		max-width: 306px;
	}

	/* 404 page */
	.entry-title {
		font-size: clamp(48px, 18vw, 160px);
	}

	#iy07gk.page-header {
		height: auto !important;
		min-height: 40vh;
		padding: 2rem 1rem;
	}
}

/* Project detail gallery — prevent overflow on small screens */
.elementor-896 .projects-detail-img-gallery,
.elementor-896 #project-gallery {
	max-width: 100%;
	overflow: hidden;
}

@media (max-width: 767px) {
	.elementor-896 .tiled-gallery .gallery-row {
		flex-direction: column;
	}

	.elementor-896 .tiled-gallery .gallery-group {
		width: 100% !important;
	}
}

/* Toggle buttons: keep same look as old non-button markup */
.project-toggle-icon.project-toggle-open,
.project-toggle-icon.project-toggle-close {
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

.project-toggle-icon.project-toggle-open:focus-visible,
.project-toggle-icon.project-toggle-close:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Used by LEARN MORE descriptive link text */
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}