.figs-site-menu, .figs-site-menu * { box-sizing: border-box; }
.figs-site-menu-trigger { position: fixed; z-index: 980; top: 27px; left: calc(50% - 600px + 365px); display:inline-flex; align-items:center; justify-content:center; appearance: none; min-width:52px; padding: 0; color: #f6f1ea; background: transparent; border: 0; cursor: pointer; font: 600 9px/1.5 Manrope,Arial,sans-serif; letter-spacing: 1.5px; text-transform: uppercase; white-space:nowrap; }
.figs-site-menu-trigger::after { content: ""; position:absolute; left:0; right:0; bottom:-5px; height: 1px; background: currentColor; transform: scaleX(.3); transition: transform .25s ease; }
.figs-site-menu-trigger:hover::after { transform: scaleX(1); }
.figs-public-page .figs-site-menu-trigger,.figs-legal-page .figs-site-menu-trigger { color: #23405a; }
.figs-site-menu { position: fixed; inset: 0; z-index: 100100; visibility: hidden; pointer-events: none; }
.figs-site-menu__shade { position: absolute; inset: 0; opacity: 0; background: rgba(18,32,44,.48); transition: opacity .45s ease; }
.figs-site-menu__panel { position: absolute; top: 0; right: 0; display: grid; grid-template-rows: auto 1fr auto; width: min(650px,100%); height: 100%; overflow-y: auto; color: #23405a; background: #fbfaf7; box-shadow: -28px 0 80px rgba(18,32,44,.16); transform: translateX(100%); transition: transform .52s cubic-bezier(.76,0,.24,1); scrollbar-color: #c39a7c #f2ece3; scrollbar-width: thin; }
.figs-site-menu--open { visibility: visible; pointer-events: auto; }
.figs-site-menu--open .figs-site-menu__shade { opacity: 1; }
.figs-site-menu--open .figs-site-menu__panel { transform: translateX(0); }
.figs-site-menu__head { display: flex; align-items: center; justify-content: space-between; min-height: 92px; padding: 0 64px; border-bottom: 1px solid rgba(35,64,90,.15); }
.figs-site-menu__brand { font-family: Forum,Georgia,serif; font-size: 26px; }
.figs-site-menu__close { position: relative; width: 38px; height: 38px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.figs-site-menu__close::before,.figs-site-menu__close::after { content: ""; position: absolute; left: 6px; top: 18px; width: 28px; height: 1px; background: #23405a; }
.figs-site-menu__close::before { transform: rotate(45deg); }.figs-site-menu__close::after { transform: rotate(-45deg); }
.figs-site-menu__body { padding: 58px 64px 54px; }
.figs-site-menu__eyebrow { margin-bottom: 28px; color: #a65432; font: 600 9px/1.4 Manrope,Arial,sans-serif; letter-spacing: .17em; text-transform: uppercase; }
.figs-site-menu__links { border-top: 1px solid rgba(35,64,90,.16); }
.figs-site-menu__link { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 15px; min-height: 67px; color: #23405a !important; border-bottom: 1px solid rgba(35,64,90,.16); text-decoration: none !important; }
.figs-site-menu__link span { color: #a65432; font: 500 9px/1 Manrope,Arial,sans-serif; letter-spacing: .12em; }
.figs-site-menu__link strong { font: 400 28px/1 Forum,Georgia,serif; }
.figs-site-menu__link i { font: normal 300 22px/1 Manrope,Arial,sans-serif; transition: transform .2s ease; }
.figs-site-menu__link:hover i { transform: translateX(5px); }
.figs-site-menu__cta { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 25px; margin-top: 38px; padding: 28px; color: #f6f1ea; background: #23405a; }
.figs-site-menu__cta p { margin: 0; font: 400 13px/1.55 Manrope,Arial,sans-serif; }
.figs-site-menu__cta a { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 20px; color: #23405a !important; background: #f6f1ea; font: 600 8px/1.3 Manrope,Arial,sans-serif; letter-spacing: .13em; text-decoration: none !important; text-transform: uppercase; }
.figs-site-menu__secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; margin-top: 1px; background: rgba(35,64,90,.18); }
.figs-site-menu__secondary button { min-height: 54px; padding: 0 18px; color: #23405a; background: #f6f1ea; border: 0; cursor: pointer; font: 600 8px/1.3 Manrope,Arial,sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.figs-site-menu__secondary button:hover { color: #f6f1ea; background: #a65432; }
.figs-site-menu__foot { display: flex; justify-content: space-between; gap: 20px; padding: 25px 64px; border-top: 1px solid rgba(35,64,90,.15); font: 400 11px/1.5 Manrope,Arial,sans-serif; }
html.figs-menu-lock, html.figs-menu-lock body { overflow: hidden !important; }
@media(max-width:1024px){
  .figs-site-menu-trigger { display: none; }
  .figs-mobile-nav__button,.figs-mobile-contacts__nav-button,.figs-mobile-villa__nav-button,.figs-genplan-mobile-nav__button,.figs-public-header__link--mobile,.figs-public-header__right a:last-child { cursor: pointer; }
  .figs-site-menu__panel { width: min(560px,100%); }
  .figs-site-menu__head { min-height: 64px; padding: 0 24px; }
  .figs-site-menu__body { padding: 40px 28px 42px; }
  .figs-site-menu__foot { padding: 22px 28px; }
}
@media(max-width:639px){
  .figs-site-menu__head { padding: 0 20px; }
  .figs-site-menu__brand { font-size: 22px; }
  .figs-site-menu__body { padding: 34px 20px 36px; }
  .figs-site-menu__link { min-height: 59px; grid-template-columns: 30px 1fr auto; }
  .figs-site-menu__link strong { font-size: 24px; }
  .figs-site-menu__cta { grid-template-columns: 1fr; padding: 23px; }
  .figs-site-menu__secondary { grid-template-columns: 1fr; }
  .figs-site-menu__foot { display: grid; padding: 20px; }
}
