/* "Get with the team" header menu (assets/team-menu.js). Works in both header styles: the homepage's white/clear
   header (home.css) and the dark inner-page header (site.css). The button takes the header's text color; the
   panel is always a white card with slate text so contrast never depends on the page behind it. */
.tm{position:relative;display:inline-flex;flex:none}
.tm-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;min-width:44px;padding:0 16px;border:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font:700 11.5px/1 "Lato",system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tm-btn svg{flex:none}
.tm-btn:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.tm-chev{transition:transform .2s}
.tm-open .tm-chev{transform:rotate(180deg)}
.tm-short{display:none}
/* Hover/open fills the button: ink on light headers, white on the dark or see-through ones. */
.tm-btn:hover,.tm-open .tm-btn{background:#141618;color:#fff;border-color:#141618}
.hdr:not(.solid) .tm-btn:hover,.hdr:not(.solid) .tm-open .tm-btn,.site-header .tm-btn:hover,.site-header .tm-open .tm-btn{background:#fff;color:#141618;border-color:#fff}
html.menu-open .tm{visibility:hidden}

.tm-panel{position:absolute;z-index:90;top:calc(100% + 10px);right:0;width:min(380px,calc(100vw - 32px));max-height:calc(100vh - 110px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#141618;border:1px solid #e7e4df;box-shadow:0 18px 50px rgba(20,22,24,.18);text-align:left;font:400 15px/1.45 "Lato",system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:0;text-transform:none}
.tm-panel[hidden]{display:none}
.tm-head{padding:18px 20px 10px;border-bottom:1px solid #e7e4df}
.tm-eyebrow{margin:0 0 4px;font:700 11px/1.3 "Lato",system-ui,sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#141618}
.tm-sub{margin:0;color:#4f555c;font-size:14px}
.tm-list{list-style:none;margin:0;padding:0}
.tm-row{display:grid;grid-template-columns:52px minmax(0,1fr);gap:0 14px;align-items:center;padding:14px 20px;border-bottom:1px solid #efece7}
.tm-av{width:52px;height:52px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#141618;color:#fff;font:700 16px/1 "Lato",system-ui,sans-serif;letter-spacing:.08em;align-self:center}
.tm-av img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.tm-who{min-width:0;display:grid;gap:1px}
.tm-name{font:400 19px/1.15 "Italiana",Georgia,serif;letter-spacing:.06em;text-transform:uppercase;color:#141618}
.tm-role{font-size:13px;color:#4f555c}
.tm-acts{grid-column:1/-1;display:flex;gap:8px;margin-top:8px}
.tm-act{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 10px;border:1px solid #d8d4cd;color:#141618;text-decoration:none;font:700 11px/1 "Lato",system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.tm-act:hover{border-color:#141618;background:#141618;color:#fff}
.tm-act:focus-visible,.tm-more:focus-visible{outline:2px solid #141618;outline-offset:2px}
.tm-more{display:flex;align-items:center;min-height:48px;padding:0 20px;color:#141618;font:700 11px/1 "Lato",system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.tm-more:hover{text-decoration:underline;text-underline-offset:4px}

/* Crowded desktop headers (8 nav links + the button): the short label until the screen is wide enough. */
@media (max-width:1499px){
  .tm-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tm-short{display:inline}
}
/* Phones: short label in the header, the list opens as a full-width sheet under the button. */
@media (max-width:600px){
  .tm-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .tm-short{display:inline}
  .tm-btn{padding:0 12px;gap:7px;letter-spacing:.16em}
  .tm-btn svg{display:none}
  .tm-panel{position:fixed;top:var(--tm-top,72px);left:12px;right:12px;width:auto;max-height:calc(100vh - var(--tm-top,72px) - 12px);max-height:calc(100svh - var(--tm-top,72px) - 12px)}
  .tm-row{padding:12px 16px}
  .tm-head{padding:16px 16px 10px}
  .tm-more{padding:0 16px}
}
@media (prefers-reduced-motion:reduce){.tm-chev{transition:none}}
