/* Shared navigation and narrow-screen controls. */
.ns-menu-toggle{display:none}
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:clip}
 .ns-mobile-nav{position:relative;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:14px 18px!important}
 .ns-mobile-nav .brand{min-width:0;max-width:calc(100% - 76px);font-size:15px;white-space:normal;line-height:1.4}
 .ns-menu-toggle{display:block;flex:none;min-height:44px;min-width:64px;border:1px solid #b8c9b0;border-radius:8px;background:white;color:#123b33;font:600 14px Arial;cursor:pointer;padding:10px 12px}
 .ns-mobile-nav .ns-mobile-links{display:none!important;flex-basis:100%;width:100%;margin:0;padding:10px 0 2px;gap:4px!important;align-items:stretch!important;flex-direction:column!important;text-align:left;border-top:1px solid #dce3d7}
 .ns-mobile-nav.ns-menu-open .ns-mobile-links{display:flex!important}
 .ns-mobile-nav .ns-mobile-links>a,.ns-mobile-nav .ns-mobile-links>button,.ns-mobile-nav .ns-mobile-links>details{display:block!important;width:100%;min-height:44px;padding:11px 12px!important;border-radius:7px;text-align:left;font-size:15px!important;box-sizing:border-box}
 .ns-mobile-nav .ns-mobile-links .btn{display:block!important}
 .ns-mobile-nav .interview-menu summary{padding:0;font-size:15px;min-height:24px}
 .ns-mobile-nav .interview-menu>div{position:static;box-shadow:none;margin-top:12px;min-width:0;width:100%}
 #bookingDialog,#nsContact{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);box-sizing:border-box}
 #bookingDialog *,#nsContact *{min-width:0}
 #nsContact input,#nsContact select,#nsContact textarea{font-size:16px}
}
