/* Navigation v2: isolated component layer. Kept separate from page styles so it
   cannot inherit legacy positioning or responsive rules. */
header{isolation:isolate;background:rgba(250,251,246,.92);backdrop-filter:blur(18px)}
header .nav{min-height:84px;gap:28px}
#navigation.site-navigation-v2{display:flex;align-items:center;justify-content:center;gap:8px;position:relative;flex:1;min-width:0;background:transparent;border:0;border-radius:0;box-shadow:none}
#navigation.site-navigation-v2>a,#navigation.site-navigation-v2>details>summary{min-height:42px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;border-radius:10px;color:var(--ink);font-size:14px;font-weight:650;line-height:1;list-style:none;white-space:nowrap;cursor:pointer;transition:background .18s ease,color .18s ease}
#navigation.site-navigation-v2>details>summary::-webkit-details-marker{display:none}
#navigation.site-navigation-v2>a:hover,#navigation.site-navigation-v2>details>summary:hover,#navigation.site-navigation-v2>details[open]>summary{background:#edf3e9;text-decoration:none}
#navigation.site-navigation-v2>details>summary .nav-chevron{font-size:12px;transition:transform .18s ease}
#navigation.site-navigation-v2>details[open]>summary .nav-chevron{transform:rotate(180deg)}
#navigation.site-navigation-v2 .mega-panel{position:fixed;top:120px;left:50%;width:min(980px,calc(100vw - 48px));display:grid;grid-template-columns:250px minmax(0,1fr);gap:12px;padding:12px;transform:translateX(-50%);background:rgba(255,255,255,.96);border:1px solid #d8e2d4;border-radius:20px;box-shadow:0 22px 55px rgba(20,45,37,.18);backdrop-filter:blur(16px);z-index:100;overflow:hidden}
#navigation.site-navigation-v2 .mega-intro{display:flex;flex-direction:column;justify-content:center;min-height:218px;padding:28px;border-radius:14px;background:linear-gradient(145deg,#17322e,#264b41);color:#fff}
#navigation.site-navigation-v2 .mega-intro span{display:block;margin-bottom:18px;color:var(--lime);font-size:10px;font-weight:800;letter-spacing:.12em}
#navigation.site-navigation-v2 .mega-intro strong{font-size:26px;line-height:1.05;letter-spacing:-.045em}
#navigation.site-navigation-v2 .mega-intro p{margin:14px 0 0;color:#cfddd3;font-size:13px;line-height:1.55}
#navigation.site-navigation-v2 .mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:6px}
#navigation.site-navigation-v2 .mega-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:11px;align-items:start;min-height:92px;padding:14px;border:1px solid transparent;border-radius:13px;color:var(--ink);text-decoration:none;transition:background .16s ease,border-color .16s ease,transform .16s ease}
#navigation.site-navigation-v2 .mega-item:hover{background:#f1f6ed;border-color:#dce8d8;transform:translateY(-1px);text-decoration:none}
#navigation.site-navigation-v2 .mega-item:focus-visible{outline:3px solid #507523;outline-offset:2px}
#navigation.site-navigation-v2 .mega-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#e4f0dc;color:#355e36;font-size:12px;font-weight:800}
#navigation.site-navigation-v2 .mega-item b{display:block;font-size:13px;line-height:1.3}
#navigation.site-navigation-v2 .mega-item small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}
#navigation.site-navigation-v2 .mega-item i{padding-top:3px;color:#65825e;font-size:13px;font-style:normal}
@media(max-width:1050px){
  header .nav{min-height:72px;gap:12px;flex-wrap:nowrap}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 13px;border:1px solid #d5dfd1;border-radius:12px;background:#fff;color:var(--ink);font-size:13px;font-weight:750;box-shadow:0 3px 12px rgba(20,45,37,.06)}
  #navigation.site-navigation-v2{position:fixed;top:73px;right:0;bottom:auto;left:0;height:calc(100dvh - 73px);display:none;align-content:start;align-items:stretch;justify-content:flex-start;gap:3px;padding:16px max(18px,calc((100vw - 720px)/2));overflow-y:auto;overscroll-behavior:contain;background:rgba(250,251,246,.98);border-top:1px solid var(--line);box-shadow:0 20px 45px rgba(20,45,37,.12);z-index:9999}
  #navigation.site-navigation-v2.open{display:flex;flex-direction:column}
  #navigation.site-navigation-v2>a,#navigation.site-navigation-v2>details{width:100%}
  #navigation.site-navigation-v2>a,#navigation.site-navigation-v2>details>summary{min-height:54px;width:100%;padding:0 14px;justify-content:space-between;font-size:15px}
  #navigation.site-navigation-v2 .mega-panel{position:static;display:block;width:100%;margin:0 0 8px;padding:6px;border-radius:14px;box-shadow:none;transform:none;background:#f4f7f1;border-color:#dfe8db}
  #navigation.site-navigation-v2 .mega-intro{display:none}
  #navigation.site-navigation-v2 .mega-links{display:flex;flex-direction:column;gap:5px}
  #navigation.site-navigation-v2 .mega-item{min-height:68px;padding:11px;background:#fff;border-color:#e1e9de}
  #navigation.site-navigation-v2 .mega-item b{font-size:13px}
  #navigation.site-navigation-v2 .mega-item small{font-size:11px}
  body:has(#navigation.open){overflow:hidden}
  .nav-cta{display:none!important}
}
@media(max-width:560px){
  header .nav{min-height:66px}
  .brand{font-size:15px;gap:9px}.brand small{font-size:8px;letter-spacing:2.7px}.mark{width:40px;height:40px;border-radius:12px;font-size:29px}.mark span{font-size:22px}
  .language-menu summary{min-height:42px;padding-inline:10px!important}.language-menu summary>span:nth-child(2){display:none}
  .menu-toggle{font-size:0;width:44px;padding:0}.menu-toggle span{font-size:18px}
  #navigation.site-navigation-v2{top:67px;height:calc(100dvh - 67px);padding:12px 14px 28px}
  #navigation.site-navigation-v2 .mega-item{grid-template-columns:34px minmax(0,1fr) auto}
}
@media(prefers-reduced-motion:reduce){#navigation.site-navigation-v2 *,#navigation.site-navigation-v2 *::before,#navigation.site-navigation-v2 *::after{transition:none!important}}

/* The locale picker is a primary header control, never a hidden navigation item. */
header .nav > .language-menu{display:block!important;position:relative;z-index:10001}
