/* New site menu, footer and blue buttons on the two older pages (website checker, privacy), loaded after grader.css. */
body { --blue: #0071E3; --blue-h: #0077ED; --soft: #F5F5F7; --dimx: #6B6B66; }
body .nav { padding: calc(env(safe-area-inset-top, 0px) + 14px) max(20px, env(safe-area-inset-right, 0px)) 14px max(20px, env(safe-area-inset-left, 0px));
  background: rgba(245,245,247,.82); border-bottom: 0; justify-content: flex-start; gap: 22px; }
body .nav .mark { font-size: 20px; color: #121212; }
body .nav .nav-links { display: flex; gap: 24px; margin-left: auto; }
body .nav .nav-links a { font-size: 15px; padding: 0; border-radius: 0; opacity: .78; color: #121212; }
body .nav .nav-links a:hover { opacity: 1; }
body .nav > .pill { min-height: 40px; padding: 0 18px; border-radius: 999px; font-size: 15px; background: var(--blue); color: #fff; box-shadow: none; filter: none; }
body .nav > .pill:hover { background: var(--blue-h); }
body .pill.dark { background: var(--blue); box-shadow: none; }
body .pill.dark:hover { background: var(--blue-h); filter: none; box-shadow: none; }
body .burger { display: none; width: 44px; height: 44px; border: 0; background: none; padding: 0; cursor: pointer; position: relative; }
body .burger i { position: absolute; left: 11px; right: 11px; height: 2px; border-radius: 2px; background: #121212; transition: transform .3s cubic-bezier(.22,.8,.2,1); }
body .burger i:first-child { top: 17px; } body .burger i:last-child { top: 25px; }
body .burger[aria-expanded="true"] i:first-child { transform: translateY(4px) rotate(45deg); } body .burger[aria-expanded="true"] i:last-child { transform: translateY(-4px) rotate(-45deg); }
body .menu { position: fixed; z-index: 49; inset: 0; background: #fff; padding: calc(env(safe-area-inset-top, 0px) + 86px) 24px 32px; display: flex; flex-direction: column; gap: 28px; }
body .menu nav { display: grid; }
body .menu nav a { font-size: 1.7rem; font-weight: 600; letter-spacing: -.03em; text-decoration: none; padding: 10px 0; border-bottom: 1px solid rgba(0,0,0,.09); color: #121212; }
body .menu .pill.big { min-height: 52px; border-radius: 999px; background: var(--blue); color: #fff; justify-content: center; }
body footer.foot { background: var(--soft); border-top: 1px solid rgba(0,0,0,.06); padding: clamp(56px, 8vh, 90px) 0 calc(28px + env(safe-area-inset-bottom, 0px)); font-size: 15px; color: #121212; }
body .foot .foot-in { max-width: 1200px; margin: 0 auto; padding: 0 max(20px, 5vw); display: grid; grid-template-columns: 1.2fr 1fr 1fr 1.3fr 1fr; gap: 30px; align-items: start; }
body .foot .mark { font-weight: 600; font-size: 20px; letter-spacing: -.02em; text-decoration: none; color: #121212; }
body .foot .f-brand p { color: var(--dimx); max-width: 30ch; margin: 12px 0 18px; }
body .foot .f-brand .pill { min-height: 40px; padding: 0 18px; border-radius: 999px; font-size: 15px; background: var(--blue); color: #fff; }
body .foot .f-h { margin: 0 0 10px; font-weight: 600; }
body .foot .foot-in > div:not(.f-brand) { display: grid; }
body .foot .foot-in > div:not(.f-brand) a { color: var(--dimx); text-decoration: none; min-height: 34px; display: flex; align-items: center; }
body .foot a:hover { color: #121212; }
body .foot-base { max-width: 1200px; margin: 44px auto 0; padding: 22px max(20px, 5vw) 0; border-top: 1px solid rgba(0,0,0,.08); display: flex; flex-wrap: wrap; gap: 8px 26px; color: var(--dimx); }
body .foot-base a { color: var(--dimx); text-decoration: none; } body .foot-base span { margin-right: auto; }
@media (max-width: 960px) {
  body .nav .nav-links { display: none; }
  body .burger { display: block; }
  body .nav > .pill { margin-left: auto; }
  body .foot .foot-in { grid-template-columns: 1fr 1fr; }
  body .foot .f-brand { grid-column: 1 / -1; }
}
/* x-b: a bold label that is not emphasis (build.mjs polish(): Seobility caps <b>/<strong> per page) */
x-b { font-weight: bolder; }
