.ndstj-nav{font-family:var(--ndstj-serif,Georgia,"Noto Serif JP",serif);font-size:.8rem;line-height:1.8;letter-spacing:.09em;box-sizing:border-box}
.ndstj-nav *,.ndstj-nav *::before,.ndstj-nav *::after{box-sizing:border-box}
.ndstj-nav [hidden]{display:none!important}
.ndstj-nav a{color:inherit;text-decoration:none}
.ndstj-nav :is(a,button):focus-visible{outline:2px solid #bfa36a;outline-offset:4px}
.ndstj-nav button{font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer}
.ndstj-nav .ndstj-menu-list,.ndstj-nav .sub-menu,.ndstj-nav .children{list-style:none;margin:0;padding:0}
.ndstj-nav-bar{display:flex;align-items:center;gap:24px;color:#fff;min-width:0}
.ndstj-desktop-nav>.ndstj-menu-list{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:flex-end}
.ndstj-desktop-nav li{position:relative;margin:0}
.ndstj-desktop-nav li>a{display:inline-flex;align-items:center;min-height:44px;font-size:.74rem;font-weight:200;letter-spacing:.1em}
.ndstj-desktop-nav li.current-menu-item>a,.ndstj-desktop-nav li.current-menu-ancestor>a,.ndstj-desktop-nav li.current_page_item>a{color:#dfc99e}
.ndstj-desktop-nav .sub-menu,.ndstj-desktop-nav .children{position:absolute;top:100%;right:0;min-width:220px;max-width:320px;padding:12px 18px;background:#132c4e;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 30px rgba(0,0,0,.12);display:none;z-index:5}
.ndstj-desktop-nav :is(.sub-menu,.children) :is(.sub-menu,.children){position:static;min-width:0;max-width:none;margin-left:12px;padding:0 0 0 12px;border:0;border-left:1px solid rgba(255,255,255,.2);box-shadow:none}
.ndstj-desktop-nav li.is-open>.sub-menu,.ndstj-desktop-nav li.is-open>.children,body:not(.ndstj-nav-ready) .ndstj-desktop-nav li:is(:hover,:focus-within)>.sub-menu,body:not(.ndstj-nav-ready) .ndstj-desktop-nav li:is(:hover,:focus-within)>.children{display:block}
.ndstj-sub-toggle{min-height:36px;min-width:28px;padding:4px;border:0;background:none;color:#bfa36a!important}
.ndstj-nav-phone{display:flex;flex-shrink:0;flex-direction:column;align-items:center;justify-content:center;min-height:50px;padding:7px 18px;border:1px solid rgba(255,255,255,.3)}
.ndstj-nav-phone>span{font-family:Georgia,serif;font-size:1.05rem;line-height:1.5;letter-spacing:.03em}
.ndstj-nav-phone>small{font-size:.58rem;line-height:1.7;letter-spacing:.04em;color:#d3dce7}
.ndstj-menu-open{display:flex;flex-shrink:0;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:52px;min-height:52px;padding:4px;border:0;background:none;font-size:.53rem!important}
.ndstj-menu-lines{position:relative;width:24px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}
.ndstj-nav-standalone{position:sticky;top:0;z-index:900;background:#132c4e;padding:12px 24px;color:#fff}
body.ndstj-has-navigation .vk-mobile-nav,body.ndstj-has-navigation .vk-mobile-nav-menu-btn,body.ndstj-has-navigation .vk-mobile-nav-menu-btn-menu,body.ndstj-has-navigation .vk-mobile-nav-menu-btn-icon{display:none!important}
.ndstj-menu-dialog:not([open]){display:none}
/* ID specificity prevents theme dialog defaults from adding margins or a width cap. */
#ndstj-menu-dialog.ndstj-menu-dialog{position:fixed;inset:0;box-sizing:border-box;width:100%;min-width:0;max-width:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:#132c4e;color:#fff;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.ndstj-menu-dialog::backdrop{background:rgba(8,20,36,.6)}
.ndstj-dialog-inner{max-width:1160px;min-height:100%;padding:40px clamp(24px,5vw,56px) 64px;margin:0 auto}
.ndstj-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.2)}
.ndstj-nav .ndstj-dialog-top h2{margin:0;padding:0;border:0;background:none;box-shadow:none;color:#bfa36a;font-size:.65rem;font-weight:400;letter-spacing:.3em}
.ndstj-nav .ndstj-dialog-top h2::before,.ndstj-nav .ndstj-dialog-top h2::after{content:none}
.ndstj-menu-close{display:flex;align-items:center;gap:18px;min-height:44px;padding:0 4px;border:0;background:none;font-size:.7rem!important}
.ndstj-menu-close>span:last-child{font-family:Arial,sans-serif;font-size:26px;font-weight:200;color:#bfa36a}
.ndstj-dialog-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:80px;padding-top:40px}
.ndstj-dialog-nav>.ndstj-menu-list>li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.ndstj-dialog-nav li>a{display:flex;align-items:center;min-height:44px;font-size:.85rem;font-weight:400}
.ndstj-dialog-nav .sub-menu,.ndstj-dialog-nav .children{padding:4px 0 8px 18px}
.ndstj-dialog-nav :is(.sub-menu,.children) a{font-size:.75rem;color:#ced8e6}
.ndstj-dialog-nav .current-menu-item>a,.ndstj-dialog-nav .current_page_item>a{color:#dfc99e}
.ndstj-dialog-contact{padding-top:16px}
.ndstj-dialog-label{display:block;margin-bottom:22px;font-size:.63rem;letter-spacing:.25em;color:#bfa36a}
.ndstj-dialog-contact p{margin:0 0 26px;font-size:.85rem;line-height:2.2;color:#d5dfeb}
.ndstj-dialog-tel{display:block;font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.04em;line-height:1.8}
.ndstj-dialog-contact>small{display:block;margin:4px 0 28px;color:#c3cfdf;font-size:.68rem}
.ndstj-dialog-link{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:52px;border-bottom:1px solid rgba(255,255,255,.3);font-size:.8rem}
.ndstj-dialog-link>span[aria-hidden]{color:#bfa36a}
.ndstj-footer-nav{margin-top:20px}
.ndstj-footer-nav>.ndstj-menu-list{display:flex;flex-wrap:wrap;gap:8px 24px}
.ndstj-footer-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.72rem;color:#d5dce6}
.ndstj-footer-nav .sub-menu{padding-left:14px;border-left:1px solid rgba(255,255,255,.15)}
.ndstj-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(hover:hover){.ndstj-nav a:hover{color:#dfc99e}}
@media(max-width:1200px){body.ndstj-nav-ready .ndstj-desktop-nav{display:none}.ndstj-nav-bar{gap:20px}}
@media(max-width:767px){.ndstj-nav-phone{display:none}.ndstj-nav-bar{gap:0}.ndstj-menu-open{min-width:44px}.ndstj-dialog-inner{padding-top:20px}.ndstj-dialog-top{padding-bottom:18px}.ndstj-dialog-grid{grid-template-columns:1fr;gap:40px;padding-top:24px}.ndstj-dialog-contact{padding-top:0}.ndstj-dialog-tel{font-size:1.4rem}.ndstj-desktop-nav>.ndstj-menu-list{gap:8px 16px;justify-content:flex-start}.ndstj-desktop-nav li>a{font-size:.72rem}body:not(.ndstj-nav-ready) .ndstj-header-inner{flex-wrap:wrap}body:not(.ndstj-nav-ready) .ndstj-header-navigation{width:100%}}
@media(prefers-reduced-motion:no-preference){.ndstj-menu-dialog[open] .ndstj-dialog-inner{animation:ndstj-menu-in .35s ease both}@keyframes ndstj-menu-in{from{opacity:.6;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}

/* Mobile: edge-to-edge panel, safe areas, and a close control that stays visible. */
@media(max-width:767px){
    #ndstj-menu-dialog .ndstj-dialog-inner{padding:0 max(24px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
    #ndstj-menu-dialog .ndstj-dialog-top{position:sticky;top:0;z-index:2;min-height:76px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:16px;background:#132c4e}
    #ndstj-menu-dialog .ndstj-menu-close{min-width:88px;min-height:44px;justify-content:flex-end}
    #ndstj-menu-dialog .ndstj-dialog-grid{gap:36px;padding-top:20px}
    #ndstj-menu-dialog .ndstj-dialog-nav li>a{overflow-wrap:anywhere}
    #ndstj-menu-dialog .ndstj-dialog-contact{padding-top:4px}
}
/* Animate the content rather than the sticky close bar. */
@media(prefers-reduced-motion:no-preference){
    #ndstj-menu-dialog[open] .ndstj-dialog-inner{animation:none}
    #ndstj-menu-dialog[open] .ndstj-dialog-grid{animation:ndstj-menu-in .3s ease both}
}

@media(max-width:767px){
    .ndstj-nav .ndstj-menu-open{gap:0;min-height:44px;min-width:44px}
    .ndstj-menu-open>span:last-child{display:none}
}

/* Both numbers belong to the same contact group and use the same type scale. */
.ndstj-dialog-phones{display:grid;gap:18px;margin:0 0 10px}
.ndstj-dialog-phone{min-width:0}
.ndstj-dialog-phone-label{display:block;margin-bottom:3px;color:#c3cfdf;font-size:.63rem;letter-spacing:.1em;line-height:1.8}
.ndstj-dialog-phone .ndstj-dialog-tel{display:inline-flex;align-items:center;min-height:44px}

/* One header pattern on every screen: two phone links and a full-screen menu. */
.ndstj-nav-phones{display:flex;align-items:stretch;gap:12px}
.ndstj-nav-phones:empty{display:none}
.ndstj-nav-bar .ndstj-menu-open{gap:0;min-width:48px;min-height:48px}
.ndstj-menu-open>span:last-child{display:none}
.ndstj-nav-bar .ndstj-nav-phone{display:flex;min-width:154px;padding:7px 16px}
@media(max-width:767px){
    /* Two rows keep both full phone numbers readable on narrow screens. */
    body.ndstj-has-navigation .ndstj-header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px}
    .ndstj-header-inner>.ndstj-brand{grid-row:1;grid-column:1;justify-self:start}
    .ndstj-header-navigation,.ndstj-header-navigation>.ndstj-nav-bar{display:contents}
    .ndstj-header-navigation .ndstj-menu-open{grid-row:1;grid-column:2;justify-self:end;min-width:44px;min-height:44px}
    .ndstj-header-navigation .ndstj-nav-phones{grid-row:2;grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
    .ndstj-header-navigation .ndstj-nav-phones:empty{display:none}
    .ndstj-nav-bar .ndstj-nav-phone{min-width:0;padding:6px 8px;min-height:58px}
    .ndstj-nav-phone>span{font-size:clamp(.8rem,3.5vw,1rem);letter-spacing:0;white-space:nowrap}
    .ndstj-nav-phone>small{font-size:.55rem;letter-spacing:.02em}
    .ndstj-nav-standalone .ndstj-nav-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
    .ndstj-nav-standalone .ndstj-nav-phones{flex:1;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    .ndstj-header-navigation noscript{grid-column:1/-1}
}
