.site-header,.mobile-menu{--ink:#10283b;--blue:#247fb7;--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;box-sizing:border-box;color:var(--ink);font-family:var(--sans)}
.site-header *,.mobile-menu *{box-sizing:border-box}
.site-header a,.mobile-menu a{color:inherit;text-decoration:none}
.site-header{position:fixed;z-index:1100;top:0;left:0;width:100%;height:72px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;gap:44px;transition:.3s;background:rgba(250,252,255,.76);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.site-header.scrolled{background:rgba(250,252,253,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,40,59,.08)}
.brand{font-size:13px;font-weight:700;letter-spacing:.24em;white-space:nowrap}
.desktop-nav{margin-left:auto;display:flex;font-size:14px;color:#52616d}
.desktop-nav a,.lang{transition:.2s}
.desktop-nav a:hover,.lang:hover{color:var(--blue)}
.header-actions{display:flex;align-items:center;gap:6px;color:#9aa6ae;font-size:12px}
.lang{border:0;background:none;padding:5px;color:#9aa6ae;cursor:pointer}
.lang.active{color:var(--blue);font-weight:700}
.menu-btn{display:none;background:none;border:0;width:34px;height:30px;position:relative}
.menu-btn span{position:absolute;width:20px;height:1px;background:var(--ink);left:7px;transition:.25s}
.menu-btn span:first-child{top:11px}
.menu-btn span:last-child{top:18px}
.menu-btn.open span:first-child{transform:rotate(45deg);top:15px}
.menu-btn.open span:last-child{transform:rotate(-45deg);top:15px}
.mobile-menu{display:none}
@media (max-width:850px){.site-header{height:62px;padding:0 20px}
.desktop-nav{display:none}
.header-actions{margin-left:auto}
.menu-btn{display:block}
.mobile-menu{display:block;position:fixed;inset:0;z-index:1050;background:rgba(248,252,254,.97);backdrop-filter:blur(20px);opacity:0;pointer-events:none;transition:.3s}
.mobile-menu.open{opacity:1;pointer-events:auto}
.mobile-menu nav{height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 34px;gap:22px}
.mobile-menu a{font:normal 42px/1.05 var(--serif)}}
.desktop-nav a{padding:10px 14px;border:1px solid transparent;border-radius:999px;transition:background .2s,border-color .2s,box-shadow .2s,color .2s}
@media(hover:hover){.desktop-nav a:hover{color:#16456e;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(209,231,250,.48));border-color:rgba(255,255,255,.95);box-shadow:inset 0 1px 1px white,0 6px 18px rgba(48,94,133,.13);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}}
.desktop-nav a:focus-visible{color:#16456e;background:rgba(219,238,253,.75);outline:2px solid #247fb7;outline-offset:2px}
.desktop-nav-shell{display:contents}
@media(min-width:851px){.site-header{gap:24px}
.desktop-nav-shell{display:flex;align-items:center;gap:12px;margin-left:auto;padding:6px 12px 6px 6px;border-radius:999px;border:1px solid rgba(255,255,255,.9);background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(215,233,248,.48));box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px rgba(164,193,216,.2),0 8px 26px rgba(29,60,91,.12);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.desktop-nav{margin-left:0;gap:4px;white-space:nowrap}
.desktop-nav a{padding:10px 16px}
.desktop-nav a.active,.desktop-nav a.active:hover,.desktop-nav a.active:focus-visible{color:#fff;background:#102e4a;border-color:rgba(16,46,74,.85);box-shadow:inset 0 1px 1px rgba(255,255,255,.12),0 3px 10px rgba(16,46,74,.2)}
.desktop-nav-shell .header-actions{border-left:1px solid rgba(71,100,125,.2);padding-left:10px;flex-shrink:0}
.desktop-nav-shell .lang{border-radius:999px;padding:8px 7px}
.desktop-nav-shell .lang.active{color:#102e4a}
.desktop-nav a:focus-visible,.desktop-nav-shell .lang:focus-visible{outline:2px solid #247fb7;outline-offset:2px}}
@media(min-width:851px) and (max-width:1100px){.site-header{padding:0 24px;gap:16px}
.desktop-nav-shell{gap:6px;padding-right:8px}
.desktop-nav{gap:0;font-size:12px}
.desktop-nav a{padding:10px 9px}
.desktop-nav-shell .header-actions{padding-left:6px}}
@media (max-width:850px){
  .site-header,.site-header.scrolled{
    top:calc(env(safe-area-inset-top,0px) + 12px);left:12px;width:calc(100% - 24px);
    height:68px;padding:0 14px;border-radius:28px;
    border:1px solid rgba(255,255,255,.85);
    background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(221,237,249,.48));
    box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px rgba(145,175,198,.15),0 8px 28px rgba(29,60,91,.13);
    backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);
    transition:height .25s,border-radius .25s;
  }
  .site-header.scrolled{height:58px;border-radius:24px}
  
  .header-actions{gap:0;flex-shrink:0}
  .header-actions .lang{min-width:36px;min-height:44px;padding:0;font-size:12px}
  .header-actions>span{margin:0 2px}
  .menu-btn{width:44px;height:44px;margin-left:2px;cursor:pointer}
  .menu-btn span{left:12px}
  .menu-btn span:first-child{top:18px}
  .menu-btn span:last-child{top:25px}
  .menu-btn.open span:first-child,.menu-btn.open span:last-child{top:22px}
  .mobile-menu{
    inset:auto;top:calc(env(safe-area-inset-top,0px) + 90px);left:12px;width:calc(100% - 24px);
    height:auto;max-height:calc(100dvh - env(safe-area-inset-top,0px) - 110px);overflow-y:auto;
    border:1px solid rgba(255,255,255,.85);border-radius:28px;
    background:linear-gradient(135deg,rgba(255,255,255,.78),rgba(221,237,249,.58));
    box-shadow:inset 0 1px 1px #fff,0 16px 40px rgba(29,60,91,.16);
    backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%);
    visibility:hidden;transform:translateY(-8px);transition:opacity .2s,transform .2s,visibility .2s,top .25s;
  }
  .site-header.scrolled + .mobile-menu{top:calc(env(safe-area-inset-top,0px) + 80px)}
  .mobile-menu.open{visibility:visible;transform:translateY(0)}
  .mobile-menu nav{height:auto;padding:18px;gap:4px;justify-content:flex-start}
  .mobile-menu a{display:block;padding:12px 14px;min-height:48px;border-radius:16px;font:normal clamp(25px,6.7vw,34px)/1.15 var(--serif)}
  .mobile-menu a:hover{background:rgba(255,255,255,.45)}
  .site-header :focus-visible,.mobile-menu a:focus-visible{outline:2px solid #247fb7;outline-offset:2px}
  html{scroll-padding-top:100px}
}
@media(prefers-reduced-motion:reduce){
  .site-header,.mobile-menu,.menu-btn span{transition:none}
}

/* Notes category disclosure, shared by desktop and mobile navigation. */
.notes-dropdown{position:relative}
.notes-dropdown>[data-nav="notes"]{display:flex;align-items:center;gap:7px;cursor:pointer}
.notes-dropdown>[data-nav="notes"]::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px}
.notes-dropdown>[aria-expanded="true"]::after{transform:rotate(225deg);margin-top:3px}
.notes-submenu[hidden]{display:none}
.notes-submenu{padding:8px;border:1px solid rgba(255,255,255,.9);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(221,237,249,.78));box-shadow:inset 0 1px 1px #fff,0 12px 30px rgba(29,60,91,.16);backdrop-filter:blur(24px) saturate(160%);-webkit-backdrop-filter:blur(24px) saturate(160%)}
.desktop-nav .notes-submenu{position:absolute;top:calc(100% + 12px);left:0;min-width:170px}
.desktop-nav .notes-submenu a{display:block;min-height:44px;padding:12px 16px;border-radius:12px}
@media(max-width:850px){
  .mobile-menu .notes-submenu{margin:2px 12px 8px;box-shadow:inset 0 1px 1px #fff;background:rgba(255,255,255,.32)}
  .mobile-menu .notes-submenu a{font-family:var(--sans);font-size:18px;line-height:1.3;min-height:44px;padding:10px 14px}
}
#places{scroll-margin-top:110px}
