/* SH mobile navigation: native modal, keyboard support and reduced motion. */
.sh-menu{--menu-gold:#c5a643;box-sizing:border-box;position:fixed;inset:0;width:calc(100% - 24px);max-width:none;height:calc(100dvh - 24px);max-height:none;margin:auto;padding:0;border:1px solid #ffffff12;border-radius:36px 0 36px 36px;background:#111113;color:#f6f4f1;overflow:hidden;opacity:0;transform:translateY(-12px) scale(.96);transform-origin:top right;transition:opacity .35s ease,transform .5s cubic-bezier(.2,.75,.25,1)}
.sh-menu[open]{display:flex;flex-direction:column}.sh-menu.is-visible{opacity:1;transform:none}.sh-menu::backdrop{background:#0008;backdrop-filter:blur(7px)}
.sh-menu::before{content:'SH';position:absolute;inset:22% 0 auto;text-align:center;font:500 clamp(220px,55vw,500px)/1 Oswald,sans-serif;letter-spacing:-.06em;color:#ffffff03;pointer-events:none}
.sh-menu-head{display:flex;align-items:center;gap:12px;padding:20px 22px;position:relative;flex-shrink:0}.sh-menu-brand{margin-right:auto}.sh-menu-brand img{width:125px;height:auto;display:block;border-radius:0}.sh-menu .language-switch{margin:0;order:initial;flex-shrink:0}.sh-menu .theme-picker{margin:0;order:initial;color:#f6f4f1;flex-shrink:0}.sh-menu .theme-options{right:-48px;background:#1b1b1e;color:#f6f4f1;z-index:5}.sh-menu .theme-options-heading{color:#b8b0a3}.sh-menu .theme-options label:hover{background:#30302e}
.sh-menu-close{position:relative;background:none;border:0;width:44px;height:44px;flex-shrink:0;color:#f6f4f1;cursor:pointer}.sh-menu-close::before,.sh-menu-close::after{content:'';position:absolute;left:11px;top:21px;width:23px;height:1px;background:currentColor;transform:rotate(45deg)}.sh-menu-close::after{transform:rotate(-45deg)}
.sh-menu-scroll{position:relative;overflow:auto;overscroll-behavior:contain;min-height:0;flex:1;display:flex;flex-direction:column;padding:12px 24px 26px;scrollbar-width:thin}
.sh-menu-nav{margin:auto 0;padding:16px 0 24px}.sh-menu-list{list-style:none;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:0}.sh-menu-list li{margin:0;opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .45s ease;transition-delay:calc(var(--i)*35ms)}.is-visible .sh-menu-list li{opacity:1;transform:none}
.sh-menu .sh-menu-link{position:relative;display:flex;align-items:center;gap:24px;padding:clamp(13px,1.8vh,20px) 4px;min-height:44px;color:#f6f4f1!important;font:200 clamp(20px,2.8vh,24px)/1.4 Oswald,sans-serif;text-transform:uppercase;letter-spacing:2.2px;text-decoration:none}.sh-menu-link::after{content:'';display:block;position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--menu-gold);transform:scaleX(0);transition:transform .3s ease}.sh-menu-link:hover,.sh-menu-link[aria-current="page"]{color:var(--menu-gold)!important}.sh-menu-link:hover::after,.sh-menu-link[aria-current="page"]::after{transform:scaleX(1)}
.sh-menu-foot{display:flex;flex-direction:column;align-items:center;text-align:center;flex-shrink:0;padding:12px 0 0}.sh-menu-appointment{display:inline-block;max-width:100%;background:var(--menu-gold);color:#111113!important;padding:15px 25px;border-radius:24px 24px 0 24px;font:400 12px/1.5 Outfit,sans-serif;text-transform:uppercase;letter-spacing:1.4px}.sh-menu .sh-menu-phone{display:block;margin:17px 0 0;color:#b8b0a3!important;font:400 13px/1.5 Outfit,sans-serif;letter-spacing:1px}.sh-menu :focus-visible{outline:2px solid var(--menu-gold);outline-offset:4px}
@media(min-width:768px){.sh-menu{width:calc(100% - 40px);height:calc(100dvh - 40px);border-radius:50px 0 50px 50px}.sh-menu-head{padding:28px 34px}.sh-menu-list li a{font-size:26px}.sh-menu-brand img{width:155px}}
@media(max-width:374px){.sh-menu-head{padding:14px 12px;gap:7px}.sh-menu-brand img{width:95px}.sh-menu .language-switch a{padding:7px}.sh-menu-scroll{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.sh-menu,.sh-menu-list li,.sh-menu-link::after{transition:none!important;transform:none!important}}

@media(max-width:359px){.sh-menu-head{flex-wrap:wrap}.sh-menu-brand{flex:1 0 40%}.sh-menu-close{width:36px}.sh-menu .language-switch{margin-left:auto}.sh-menu .theme-picker{margin-left:auto}}

/* Keep phone geometry stable against the legacy a:hover display rule. */
.sh-menu .sh-menu-phone,.sh-menu .sh-menu-phone:hover,.sh-menu .sh-menu-phone:focus{display:block;flex-shrink:0;transform:none;transition:color .2s ease}

/* The dialog replaces Bootstrap collapse only below the desktop breakpoint. */
@media(max-width:1199px){.navbar.sh-menu-enabled .navbar-collapse{display:none!important}}

/* Numbered, left-aligned navigation. */
.sh-menu-list li:not(:last-child){border-bottom:1px solid #ffffff0b}
.sh-menu-number{flex:0 0 24px;font:300 11px/1.4 Outfit,sans-serif;letter-spacing:1px;color:#a19e99}
.sh-menu .sh-menu-link:hover,.sh-menu .sh-menu-link:focus{display:flex}
.sh-menu-list{max-width:560px;margin-inline:auto;width:100%}
