/* Shared design tokens + editorial pill menu (nav markup is injected by site.js) */
:root{--ink:#0B0C0E;--grey:#8A8E96;--line:#CFCFCF;--pill:#C4C4C4;--bg:#fff;--m:1.5vw;
  --fs-h:max(30px,3.05vw);--fs-body:max(15px,.9vw);--fs-small:max(13px,.75vw);--fs-mono:max(11px,.62vw)}
.site-header,#menu-mobile{display:none!important}

.sn{position:fixed;top:1.2vw;left:1.2vw;right:1.2vw;z-index:70;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;pointer-events:none;
  font-family:'Geist Mono',ui-monospace,SFMono-Regular,monospace}
.sn a,.sn button{pointer-events:auto}
.sn-pills{display:flex;flex-wrap:wrap;gap:.1vw}
.sn-pill,.sn-menu{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;height:max(24px,1.2vw);padding:0 .6vw;border-radius:999px;
  background:rgba(196,196,196,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:max(11px,.6vw);line-height:1;text-transform:uppercase;
  white-space:nowrap;transition:background-color .35s ease,color .35s ease}
.sn-pill:hover,.sn-pill:focus-visible,.sn-menu:hover,.sn-menu:focus-visible{background:var(--ink)}
.sn-pill[aria-current="page"]{background:var(--ink)}
.sn-pill:focus-visible,.sn-menu:focus-visible{outline:1px solid var(--ink);outline-offset:2px}
.sn-news{box-sizing:border-box;display:flex;align-items:center;gap:.5vw;height:max(24px,1.2vw);width:max(220px,17.5vw);padding:0 .6vw;border-radius:.3vw;overflow:hidden;
  background:rgba(196,196,196,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:max(11px,.6vw);text-transform:uppercase;text-decoration:none}
.sn-news b{font-weight:400;flex:none}
.sn-news .tk{flex:1;overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,#000 80%,transparent);mask-image:linear-gradient(90deg,#000 80%,transparent)}
.sn-news .tk span{display:inline-block;padding-right:2em;animation:sn-tk 16s linear infinite}
@keyframes sn-tk{from{transform:translateX(0)}to{transform:translateX(-100%)}}
.sn-menu{display:none}

/* Mobile: one pill + full-screen index */
.sn-ov{position:fixed;inset:0;z-index:80;background:var(--bg);color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;
  padding:16px;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s linear .35s;font-family:'Inter Tight','Helvetica Neue',Arial,sans-serif}
.sn-ov.on{opacity:1;visibility:visible;transition-delay:0s}
.sn-ov .top{display:flex;justify-content:space-between;font-family:'Geist Mono',ui-monospace,monospace}
.sn-ov ul{list-style:none;margin:0;padding:0}
.sn-ov li{border-bottom:1px solid var(--line)}
.sn-ov li:first-child{border-top:1px solid var(--line)}
.sn-ov li a{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:clamp(30px,9.5vw,52px);line-height:1;letter-spacing:-.02em;text-transform:uppercase;color:inherit;text-decoration:none}
.sn-ov li a[aria-current="page"]{color:var(--grey)}
.sn-ov .sn-pill{background:var(--ink)}
.sn-ov .bot{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;text-transform:uppercase;color:var(--grey)}
@media (max-width:899px){
  .sn{top:12px;left:12px;right:12px}
  .sn-pills{display:none}.sn-menu{display:inline-flex;height:28px;padding:0 12px;font-size:12px;background:rgba(196,196,196,.9)}
  .sn-news{width:auto;max-width:62vw;height:28px;font-size:11px;padding:0 10px;border-radius:6px}
}
@media (prefers-reduced-motion:reduce){.sn-news .tk span{animation:none}}

/* Harmonised type: section/page headings share one scale */
#start-title{font-weight:400!important;text-transform:uppercase;letter-spacing:-.01em!important;font-size:max(34px,3.05vw)!important;line-height:1.05!important}
body{-webkit-font-smoothing:antialiased}

/* Phone: news + menu pills sit at the bottom; Menu opens a pill panel at the top and the news bar goes away */
@media (max-width:899px){
  .sn{top:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));left:12px;right:12px;align-items:center;transition:opacity .25s ease,transform .25s ease}
  .sn-news{order:-1;flex:1;min-width:0;max-width:calc(100% - 96px);width:auto}
  .sn-menu{order:1;flex:none;height:32px;padding:0 16px;font-size:12px}
  .sn-news{height:32px;font-size:11px;border-radius:8px}
  html.sn-open .sn{opacity:0;transform:translateY(12px);pointer-events:none}
  /* top panel */
  .sn-ov{inset:0 0 auto 0;bottom:auto;height:auto;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 12px 44px;
    background:linear-gradient(180deg,rgba(243,243,243,.96) 0%,rgba(225,225,225,.92) 60%,rgba(255,255,255,0) 100%);
    -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(-14px);
    transition:opacity .3s ease,transform .3s ease,visibility 0s linear .3s}
  .sn-ov.on{transform:none}
  .sn-ov .top{order:2;flex:none}
  .sn-ov .top .sn-pill:not([data-close]){display:none}
  .sn-ov [data-close]{font-size:0;width:44px;height:36px;padding:0;justify-content:center;background:rgba(196,196,196,.95);position:relative}
  .sn-ov [data-close]::before,.sn-ov [data-close]::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}
  .sn-ov [data-close]::after{transform:translate(-50%,-50%) rotate(-45deg)}
  .sn-ov ul{order:1;flex:1;display:flex;flex-wrap:wrap;gap:6px}
  .sn-ov li,.sn-ov li:first-child{border:0}
  .sn-ov li a{display:inline-flex;height:36px;padding:0 16px;border-radius:999px;background:rgba(196,196,196,.95);color:#fff;font-family:'Geist Mono',ui-monospace,monospace;font-size:14px;letter-spacing:0;line-height:1}
  .sn-ov li a[aria-current="page"]{background:var(--ink);color:#fff}
  .sn-ov .bot{display:none}
}
