/* A small glass backing keeps passing text from competing with the logo.
   The pseudo-element adds no layout size and leaves the header transparent. */
body>header>a:first-child{position:relative;isolation:isolate}
body>header>a:first-child::before{
  content:"";
  position:absolute;
  inset:-8px -14px;
  z-index:-1;
  pointer-events:none;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.24);
  -webkit-backdrop-filter:blur(16px) saturate(110%);
  backdrop-filter:blur(16px) saturate(110%);
  box-shadow:0 2px 12px rgba(25,45,85,.035);
}

/* Only enabled where Safari has compositor-thread scroll timelines. */
html.safari-edge body{position:relative}
.safari-edge #chrome-top{display:none!important}
.safari-edge-layer{position:absolute;inset:0;overflow:clip;pointer-events:none;z-index:0}
.safari-edge :is(#scene,#field){position:absolute;inset:calc(-1 * var(--edge-pad)) 0 auto;height:calc(100lvh + 2 * var(--edge-pad))!important;animation:oore-edge-follow 1s linear both;animation-timeline:scroll(root block)}
@keyframes oore-edge-follow{from{transform:translateY(0)}to{transform:translateY(var(--edge-travel))}}
/* Keep controls accessible without a full-width fixed surface at the edge. */
.safari-edge body>header{display:contents}
.safari-edge body>header::before{display:none}
.safari-edge body>header>:is(a,nav,.header-actions){position:fixed;top:max(23px,env(safe-area-inset-top));z-index:30;pointer-events:auto}
.safari-edge body>header>a:first-child{left:24px}
.safari-edge body>header>:is(nav,.header-actions),.safari-edge body>header>a:last-child:not(:first-child){right:24px}
.safari-edge .mobile-menu nav{position:fixed;top:max(76px,calc(env(safe-area-inset-top) + 60px));left:20px;right:20px}
