/* Shared marketing navigation: balanced gutters and equal category spacing. */
/* Secondary account action: a translucent pill with a soft inner reflection. */
html header .site-header-login{
  display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
  min-height:34px;padding:5px 14px;border:1px solid #d6d7db;border-radius:999px;
  background:linear-gradient(180deg,#f8f8fa 0%,#e5e6e9 100%);color:#292b30;
  box-shadow:inset 0 1px 0 #ffffffd9,0 1px 2px #11111108;
  font-family:var(--font-satoshi),var(--font-geist-sans),sans-serif;
  font-size:15.2px;font-weight:400;line-height:1.47;text-decoration:none;white-space:nowrap;
  transition:border-color 160ms ease,box-shadow 160ms ease;
}
html header .site-header-login:hover{
  background:linear-gradient(180deg,#f0f1f3 0%,#d9dbe0 100%);border-color:#bfc2c8;color:#16181c;
  box-shadow:inset 0 1px 0 #ffffffd9,0 2px 5px #1111110d;
}
html header .site-header-login:focus-visible{
  outline:2px solid var(--site-ink,#292b30);outline-offset:3px;
}
html.dark header .site-header-login{
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.045));
  border-color:rgba(255,255,255,.18);color:#fff;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  box-shadow:inset 0 1px 1px rgba(255,255,255,.22),inset 0 -1px 6px rgba(255,255,255,.035),0 2px 8px rgba(0,0,0,.12);
}
html.dark header .site-header-login:hover{
  background:linear-gradient(180deg,rgba(255,255,255,.23),rgba(255,255,255,.08));
  border-color:rgba(255,255,255,.28);color:#fff;
}
html header .site-header-login + .site-navmenu-cta{margin-left:0}
@media(max-width:420px){
  html .site-navbar-shell .site-header-login,
  html .site-navbar-shell .site-navmenu-cta{font-size:13px;padding-inline:11px;white-space:nowrap}
  html .site-navbar-shell > .relative.mx-auto > .lg\:hidden{gap:6px}
  html .site-navbar-shell button[aria-controls="site-mobile-menu"]{margin-left:0}
}
@media(max-width:380px){
  html .site-navbar-shell .tessolva-brand-logo[data-brand-context="header"]{width:126px;height:23.39px}
  html .site-navbar-shell > .relative.mx-auto > .lg\:hidden{gap:4px}
  html .site-navbar-shell .site-header-login,
  html .site-navbar-shell .site-navmenu-cta{padding-inline:10px}
}
@media(max-width:350px){
  html .site-navbar-shell .tessolva-brand-logo[data-brand-context="header"]{width:108px;height:20.04px}
  html .site-navbar-shell .site-header-login,
  html .site-navbar-shell .site-navmenu-cta{font-size:12px;padding-inline:9px}
}
@media(prefers-reduced-motion:reduce){html header .site-header-login{transition:none}}
/* Opening Resources uses the same grey highlight as the other categories. */
html header .tm-menu[open] > summary{box-shadow:none}
/* Keep captured client components English-only if hydration recreates a picker. */
header [aria-label*="change language" i],
header [aria-label*="change language" i] + select{
  display:none!important;
}
html .site-navbar-shell > .relative.mx-auto{
  width:100%;height:68px;min-width:0;padding-inline:32px;
}
html .site-navbar-shell nav[aria-label="Main"] ul.group{
  gap:8px;
}
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > :is(a,button).site-navmenu-trigger,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > .tm-menu > summary{
  padding:10px 12px;margin:0;white-space:nowrap;line-height:21px;
}
html .site-navbar-shell .tm-menu > summary{padding:10px 12px;margin:0}
html .site-navbar-shell #site-mobile-menu{max-height:calc(100dvh - 68px)!important}
html .ts-header{height:68px;padding-inline:max(32px,calc((100% - 1176px)/2))}
html .ts-header > nav{gap:32px;align-items:center;font-weight:500}
html .ts-header > nav > :is(a,.tm-menu){white-space:nowrap}
html .ts-header > nav > a[aria-current]{margin:0;padding:0;background:none}
@media(min-width:1024px){
  html .site-navbar-shell > .relative.mx-auto{
    display:grid;grid-template-columns:minmax(154px,1fr) auto minmax(234px,1fr);gap:12px;
  }
  html .site-navbar-shell > .relative.mx-auto > nav{justify-self:center}
  html .site-navbar-shell > .relative.mx-auto > div{justify-self:end}
}
@media(min-width:1200px){
  html .site-navbar-shell nav[aria-label="Main"] ul.group{gap:12px}
}
@media(max-width:1023px){
  html .site-navbar-shell > .relative.mx-auto{padding-inline:24px}
}
@media(max-width:650px){
  html .site-navbar-shell > .relative.mx-auto{height:60px;padding-inline:20px}
  html .site-navbar-shell #site-mobile-menu{max-height:calc(100dvh - 60px)!important}
  html .ts-header{height:auto;min-height:60px;padding:12px 20px}
  html .ts-header > nav{gap:8px;flex-wrap:wrap;font-size:12px}
}
@media(max-width:380px){
  html .site-navbar-shell > .relative.mx-auto{padding-inline:16px}
  html .ts-header{padding-inline:16px}
}

/* The same quiet highlight for links, Resources, and keyboard navigation. */
html{--tessolva-nav-highlight:rgba(17,19,24,.065)}
html.dark{--tessolva-nav-highlight:rgba(255,255,255,.10)}
html .ts-header > nav > a,
html .ts-header > nav > .tm-menu > summary,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > :is(a,button).site-navmenu-trigger,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > .tm-menu > summary{
  border-radius:8px;transition:background-color 160ms ease,color 160ms ease;
}
@media(min-width:651px){
  html .ts-header > nav > a,
  html .ts-header > nav > a[aria-current],
  html .ts-header > nav > .tm-menu > summary{
    padding:8px 10px;margin:-8px -10px;
  }
}
@media(hover:hover) and (pointer:fine){
  html .ts-header > nav > a:hover,
  html .ts-header > nav > .tm-menu > summary:hover,
  html .site-navbar-shell nav[aria-label="Main"] ul.group > li > :is(a,button).site-navmenu-trigger:hover,
  html .site-navbar-shell nav[aria-label="Main"] ul.group > li > .tm-menu > summary:hover{
    background-color:var(--tessolva-nav-highlight)!important;
    color:var(--site-ink,var(--ts-ink,#111))!important;
  }
}
html .ts-header > nav > a:focus-visible,
html .ts-header > nav > .tm-menu > summary:focus-visible,
html .ts-header > nav > .tm-menu[open] > summary,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > :is(a,button).site-navmenu-trigger:focus-visible,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > .tm-menu > summary:focus-visible,
html .site-navbar-shell nav[aria-label="Main"] ul.group > li > .tm-menu[open] > summary{
  background-color:var(--tessolva-nav-highlight)!important;
  color:var(--site-ink,var(--ts-ink,#111))!important;
}
@media(prefers-reduced-motion:reduce){
  html .ts-header > nav > a,
  html .ts-header > nav > .tm-menu > summary,
  html .site-navbar-shell .site-navmenu-trigger,
  html .site-navbar-shell .tm-menu > summary{transition:none}
}
/* Account access: hover on desktop, native disclosure on touch and keyboard. */
html header .site-account-menu{position:relative;display:inline-block;flex-shrink:0;z-index:60}
html header .site-account-menu > summary{list-style:none;cursor:pointer;gap:7px;user-select:none}
html header .site-account-menu > summary::-webkit-details-marker{display:none}
html header .account-chevron{width:12px;height:12px;flex-shrink:0;transition:transform 160ms ease}
html header .site-account-menu[open] .account-chevron{transform:rotate(180deg)}
html header .site-account-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:236px;padding:6px;border:1px solid #e0e1e6;border-radius:14px;background:#fff;box-shadow:0 12px 35px #16182014;z-index:100;color:#202126}
html header .site-account-dropdown:before{content:"";position:absolute;left:0;right:0;height:12px;top:-12px}
html header .site-account-dropdown > a{display:flex;align-items:center;gap:12px;padding:12px 10px;border-radius:8px;text-align:left;text-decoration:none;color:inherit;line-height:1.4;white-space:normal}
html header .site-account-dropdown > a:hover,html header .site-account-dropdown > a:focus-visible{background:#f2f3f5;color:#141519}
html header .site-account-dropdown > a > svg{width:19px;height:19px;color:#777b85;flex-shrink:0}
html header .site-account-dropdown strong{display:block;font-size:13px;font-weight:500}
html header .site-account-dropdown small{display:block;font-size:11px;margin-top:3px;font-weight:400;color:#8b8e97}
html header .site-account-menu + .site-navmenu-cta{margin-left:0}
html.dark header .site-account-dropdown{background:#24252a;border-color:#41434c;box-shadow:0 12px 35px #00000038;color:#f6f6f8}
html.dark header .site-account-dropdown > a:hover,html.dark header .site-account-dropdown > a:focus-visible{background:#33353d;color:#fff}
html.dark header .site-account-dropdown small{color:#a8abb5}
html header #site-mobile-menu .site-account-dropdown{top:auto;bottom:calc(100% + 10px)}
@media(min-width:1100px){html .site-navbar-shell > .relative.mx-auto{grid-template-columns:minmax(154px,1fr) auto minmax(268px,1fr)}}
@media(min-width:1024px) and (max-width:1099px){
 html .site-navbar-shell > .relative.mx-auto{display:flex}
 html .site-navbar-shell > .relative.mx-auto > nav,html .site-navbar-shell > .relative.mx-auto > .lg\:flex{display:none!important}
 html .site-navbar-shell > .relative.mx-auto > .lg\:hidden{display:flex!important}
}
@media(max-width:420px){
 html .site-navbar-shell .tessolva-brand-logo[data-brand-context="header"]{width:112px;height:auto}
 html header .site-account-menu > summary{padding-inline:9px;gap:4px;font-size:12px}
 html header .account-chevron{width:10px;height:10px}
}
@media(max-width:380px){html .site-navbar-shell .tessolva-brand-logo[data-brand-context="header"]{width:100px;height:auto}}
@media(max-width:350px){
 html .site-navbar-shell > .relative.mx-auto{padding-inline:12px}
 html .site-navbar-shell .tessolva-brand-logo[data-brand-context="header"]{width:86px;height:auto}
 html header .site-account-menu > summary{font-size:11px;padding-inline:7px}
 html .site-navbar-shell .site-navmenu-cta{font-size:11px;padding-inline:8px}
}
@media(prefers-reduced-motion:reduce){html header .account-chevron{transition:none}}

/* Figtree matches the reference navigation; the brand wordmark stays intact. */
@font-face{font-family:Figtree;src:url('/fonts/figtree/Figtree-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Figtree;src:url('/fonts/figtree/Figtree-Medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Figtree;src:url('/fonts/figtree/Figtree-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
html header :is(nav,nav *,button,summary,.site-header-login,.site-navmenu-cta),
html header a:not(.tessolva-brand-logo):not(:has(.tc-logo)){
  font-family:Figtree,Arial,sans-serif!important;
}
html header nav > a,
html header .site-navmenu-trigger,
html header .tm-menu > summary{font-weight:400!important}

/* Clear white primary action, paired with the translucent Accounts control. */
html header .site-navmenu-cta,
html header .ts-header-actions > .ts-button{
  background:#fafafa!important;color:#111!important;
  border:1px solid rgba(255,255,255,.9)!important;border-radius:999px!important;
  box-shadow:0 1px 2px rgba(0,0,0,.12);font-weight:500;
  transition:background-color 160ms ease,box-shadow 160ms ease;
}
html header .site-navmenu-cta:hover,
html header .ts-header-actions > .ts-button:hover{
  background:#e9e9e9!important;color:#111!important;
  box-shadow:0 2px 8px rgba(0,0,0,.18);opacity:1;transform:none;
}
html header .site-navmenu-cta:focus-visible,
html header .ts-header-actions > .ts-button:focus-visible{
  outline:2px solid #fff;outline-offset:4px;
}
@media(prefers-reduced-motion:reduce){
  html header .site-navmenu-cta,html header .ts-header-actions > .ts-button{transition:none}
}
