.legacy-site-header { display: none !important; }
body.gmenu-open { overflow: hidden !important; }

.global-menu-header,
.global-menu-header * { box-sizing: border-box; }
.global-menu-header {
  --gmenu-ink: #0a0a09;
  --gmenu-bronze: #d5b38f;
  --gmenu-display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;
  --gmenu-sans: "Didact Gothic", Arial, sans-serif;
  position: fixed;
  z-index: 100000;
  inset: 0 0 auto;
  height: 88px;
  padding: 0 40px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: rgba(10,10,9,.28);
  color: white;
  font-family: var(--gmenu-sans);
  transition: height .3s, background .3s, backdrop-filter .3s;
}
.global-menu-header.is-scrolled {
  height: 74px;
  background: rgba(10,10,9,.9);
  backdrop-filter: blur(18px);
}
.global-menu-header:has(.gmenu-nav.is-open) { background: transparent; backdrop-filter: none; }
.gmenu-brand { position: relative; z-index: 2; display: block; width: 164px; }
.gmenu-brand img { display: block; width: 100%; height: auto; }
.gmenu-context { position: relative; z-index: 2; color: rgba(255,255,255,.62); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; }
.gmenu-mobile-call { position: relative; z-index: 2; display: none; }
.gmenu-toggle { position: relative; z-index: 2; justify-self: end; display: flex; align-items: center; gap: 13px; padding: 10px 0 10px 16px; border: 0; background: none; color: white; font-family: var(--gmenu-sans); cursor: pointer; }
.gmenu-toggle-label { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.gmenu-lines { position: relative; display: block; width: 30px; height: 18px; }
.gmenu-lines i { position: absolute; right: 0; width: 30px; height: 2px; border-radius: 2px; background: currentColor; transition: top .3s, transform .3s, width .3s, opacity .2s; }
.gmenu-lines i:nth-child(1) { top: 1px; }
.gmenu-lines i:nth-child(2) { top: 8px; }
.gmenu-lines i:nth-child(3) { top: 15px; width: 23px; }
.gmenu-toggle:hover .gmenu-lines i:nth-child(3) { width: 30px; }
.gmenu-toggle[aria-expanded="true"] .gmenu-lines i:nth-child(1) { top: 8px; transform: rotate(45deg); }
.gmenu-toggle[aria-expanded="true"] .gmenu-lines i:nth-child(2) { opacity: 0; }
.gmenu-toggle[aria-expanded="true"] .gmenu-lines i:nth-child(3) { top: 8px; width: 30px; transform: rotate(-45deg); }
.gmenu-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

.gmenu-nav { position: fixed; z-index: 1; inset: 0; overflow-y: auto; background: var(--gmenu-ink); color: white; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .38s ease, visibility .38s; }
.gmenu-nav.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.gmenu-visual { --gmenu-image: url("imgs/office-renovation/klc.webp"); position: absolute; inset: 0 0 0 64%; background-image: linear-gradient(90deg, var(--gmenu-ink), transparent 40%), linear-gradient(0deg, rgba(10,10,9,.78), transparent 55%), var(--gmenu-image); background-position: center; background-size: cover; opacity: .3; transform: scale(1.035); transition: transform 1.1s cubic-bezier(.2,.7,.2,1), opacity .6s, background-image .35s; }
.gmenu-nav.is-open .gmenu-visual { opacity: .42; transform: scale(1); }
.gmenu-shell { width: min(1320px, calc(100vw - 80px)); margin-inline: auto; }
.gmenu-layout { position: relative; z-index: 1; min-height: 100svh; padding-top: 150px; padding-bottom: 42px; display: grid; grid-template-columns: .8fr 1.2fr; grid-template-rows: 1fr auto; column-gap: 9vw; }
.gmenu-kicker { margin: 0 0 28px; color: var(--gmenu-bronze); font: 400 10px/1.2 var(--gmenu-sans); letter-spacing: .22em; text-transform: uppercase; }
.gmenu-primary, .gmenu-services { align-self: center; padding-bottom: 52px; }
.gmenu-primary > a, .gmenu-services > a { position: relative; display: table; color: white; text-decoration: none; font-family: var(--gmenu-display); font-weight: 400; line-height: 1.08; transition: color .25s, transform .3s; }
.gmenu-primary > a { margin: 8px 0; font-size: clamp(31px, 3.1vw, 45px); }
.gmenu-primary > a span { display: inline-block; width: 38px; color: rgba(255,255,255,.32); font: 400 9px/1 var(--gmenu-sans); letter-spacing: .1em; vertical-align: middle; }
.gmenu-services > a { margin: 12px 0; color: rgba(255,255,255,.76); font-size: clamp(22px, 2.05vw, 30px); }
.gmenu-primary > a:hover, .gmenu-services > a:hover { color: var(--gmenu-bronze); transform: translateX(7px); }
.gmenu-nav a[aria-current="page"] { color: white; }
.gmenu-services > a[aria-current="page"]::after { content: ""; position: absolute; left: 0; right: 0; bottom: -4px; height: 1px; background: #a77b55; }
.gmenu-contact { grid-column: 1 / -1; display: grid; grid-template-columns: .8fr .8fr 1fr; gap: 4vw; align-items: end; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.14); }
.gmenu-contact .gmenu-kicker { margin-bottom: 11px; }
.gmenu-contact a { display: table; margin: 5px 0; color: rgba(255,255,255,.68); text-decoration: none; font-size: 14px; transition: color .25s; }
.gmenu-contact a:hover { color: white; }
.gmenu-contact > span { justify-self: end; color: rgba(255,255,255,.44); font-size: 11px; letter-spacing: .15em; text-transform: uppercase; }

@media (max-width: 1050px) {
  .global-menu-header { padding: 0 24px; }
  .gmenu-visual { left: 72%; opacity: .2; }
  .gmenu-layout { column-gap: 6vw; }
}
@media (max-width: 700px) {
  .global-menu-header { height: 74px; padding: 0 18px; grid-template-columns: 1fr auto auto; gap: 10px; }
  .gmenu-brand { width: 135px; }
  .gmenu-context { display: none; }
  .gmenu-mobile-call { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 72px; height: 39px; padding: 0 13px; border: 1px solid rgba(213,179,143,.72); border-radius: 999px; background: rgba(167,123,85,.16); color: white; text-decoration: none; font: 400 11px/1 var(--gmenu-sans); letter-spacing: .08em; text-transform: uppercase; backdrop-filter: blur(10px); transition: background .25s, color .25s, transform .25s; }
  .gmenu-mobile-call::before { content: "✆"; color: var(--gmenu-bronze); font-size: 15px; line-height: 1; }
  .gmenu-mobile-call:hover, .gmenu-mobile-call:active { background: #a77b55; color: #11110f; transform: translateY(-1px); }
  .gmenu-mobile-call:hover::before, .gmenu-mobile-call:active::before { color: #11110f; }
  .gmenu-toggle-label { font-size: 10px; }
  .gmenu-shell { width: calc(100% - 36px); }
  .gmenu-layout { min-height: 100svh; padding-top: 110px; padding-bottom: 30px; display: block; }
  .gmenu-visual { display: none; }
  .gmenu-primary, .gmenu-services { padding-bottom: 38px; }
  .gmenu-kicker { margin-bottom: 17px; }
  .gmenu-primary > a { margin: 7px 0; font-size: clamp(26px, 8.4vw, 34px); }
  .gmenu-services > a { margin: 9px 0; font-size: clamp(20px, 6.3vw, 26px); line-height: 1.15; }
  .gmenu-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 18px; padding-bottom: 24px; }
  .gmenu-contact > span { grid-column: 1 / -1; justify-self: start; }
}
@media (prefers-reduced-motion: reduce) {
  .global-menu-header *, .global-menu-header *::before, .global-menu-header *::after { transition-duration: .01ms !important; }
}
