/* Picvento Floating Navigation V10
   Inspired by animated, section-aware floating pill navigation, wholly original Picvento visuals.
   Shifts ink/surface when crossing dark and light content; no full-width white masthead. */
.pv-header.pv-header-v2.pv9-header.pv10-header{
  position:fixed!important;top:15px!important;right:0!important;left:0!important;
  width:100%!important;height:0!important;min-height:0!important;
  z-index:2000!important;
  border:0!important;background:transparent!important;
  box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  isolation:auto!important;pointer-events:none;
}
.pv10-header .pv9-nav-wrap{
  --pv10-surface:rgba(255,255,255,.97);
  --pv10-text:#25293f;
  --pv10-soft:#636d83;
  --pv10-line:rgba(28,32,62,.09);
  --pv10-hover:rgba(100,87,227,.09);
  width:min(1090px,calc(100% - 44px));min-width:0;
  margin:0 auto;position:relative;pointer-events:auto;
  border:1px solid var(--pv10-line);
  border-radius:999px;
  background:var(--pv10-surface);
  color:var(--pv10-text);
  box-shadow:0 11px 39px rgba(10,15,43,.13),0 2px 9px rgba(10,15,43,.055);
  transition:background-color .36s ease,border-color .36s ease,box-shadow .36s ease,
    color .36s ease,width .35s ease,transform .35s ease;
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
}
.pv10-header[data-pv10-theme="dark"] .pv9-nav-wrap{
  --pv10-surface:rgba(20,22,34,.95);
  --pv10-text:#fff;
  --pv10-soft:#c5c8d6;
  --pv10-line:rgba(255,255,255,.12);
  --pv10-hover:rgba(255,255,255,.1);
  box-shadow:0 14px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.075);
}
.pv10-header.pv10-scrolled .pv9-nav-wrap{width:min(1054px,calc(100% - 50px))}
.pv10-header .pv9-header-inner{
  height:64px!important;min-height:64px!important;
  padding:0 9px 0 17px!important;
  margin:0!important;width:100%!important;max-width:none!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center;gap:12px!important;
  overflow:visible;box-sizing:border-box;
}
.pv10-header .pv9-brand-area{flex:none;min-width:0;gap:0}
.pv10-header .pv9-brand-separator,.pv10-header .pv9-brand-descriptor{display:none!important}
.pv10-header .pv-logo{display:inline-flex;align-items:center;gap:9px!important;width:auto;max-width:100%;white-space:nowrap}
.pv10-header .pv-mark svg{width:35px!important;height:35px!important;filter:none!important}
.pv10-header .pv-wordmark{
  font-family:PVManrope,system-ui,sans-serif!important;
  font-size:23px!important;font-weight:900!important;letter-spacing:-.068em!important;
  color:var(--pv10-text)!important;line-height:1.15!important;transition:color .36s ease;
}
.pv10-header .pv-wordmark span{color:#796efb!important}
.pv10-header .pv9-desktop-nav{
  display:flex!important;align-items:center;justify-content:center;
  width:max-content;max-width:none;gap:8px!important;
  margin:0!important;padding:0!important;height:auto!important;
  white-space:nowrap!important;flex-wrap:nowrap!important;
}
.pv10-header .pv9-nav-link,.pv10-header .pv9-nav-categories>summary{
  display:inline-flex!important;align-items:center;justify-content:center;
  height:39px!important;min-height:39px!important;min-width:0;
  border-radius:9px!important;padding:0 13px!important;
  white-space:nowrap!important;font-size:12px!important;
  font-weight:850!important;letter-spacing:-.014em!important;
  line-height:1.1!important;color:var(--pv10-text)!important;
  transition:background-color .22s,color .22s!important;
}
.pv10-header .pv9-nav-link:hover,
.pv10-header .pv9-nav-categories>summary:hover,
.pv10-header .pv9-nav-categories[open]>summary,
.pv10-header .pv9-nav-link:focus-visible,
.pv10-header .pv9-nav-categories>summary:focus-visible{
  color:var(--pv10-text)!important;background:var(--pv10-hover)!important;
}
.pv10-header .pv9-chevron{color:var(--pv10-soft);transition:transform .2s,color .35s}
.pv10-header .pv9-header-actions{
  justify-self:end;display:flex!important;align-items:center;gap:8px!important;
  margin:0!important;width:max-content;min-width:0;
}
.pv10-header .pv9-search-toggle{display:none!important}
.pv10-header .pv9-header-cta{
  display:inline-flex!important;gap:0!important;
  align-items:center;justify-content:center;
  min-width:133px;min-height:45px!important;height:45px!important;
  padding:0 17px!important;border:0!important;border-radius:999px!important;
  color:#fff!important;background:#6258f5!important;
  font-size:11.5px!important;font-weight:900!important;
  white-space:nowrap!important;line-height:1!important;
  box-shadow:0 5px 14px rgba(75,67,195,.17)!important;
  transform:none!important;
  transition:background .2s,box-shadow .2s,transform .2s!important;
}
.pv10-header .pv9-header-cta:hover{background:#5148dd!important;transform:translateY(-1px)!important;box-shadow:0 8px 21px rgba(75,67,195,.29)!important}
.pv10-header .pv9-cta-arrow{display:none!important}
.pv10-header .pv9-mobile-toggle{display:none!important}
.pv10-header .pv9-mega{
  position:absolute!important;top:calc(100% + 13px)!important;left:50%!important;
  transform:translateX(-50%)!important;
  width:min(760px,calc(100vw - 32px))!important;
  border-radius:20px!important;border:1px solid #e8e7f4;
  color:#22263e!important;background:#fff!important;
  box-shadow:0 30px 65px rgba(15,18,52,.22);
  white-space:normal!important;
}
.pv10-header .pv9-mega-top strong,.pv10-header .pv9-mega-grid strong{color:#24283c}
.pv10-header .pv9-mega a{color:#343953!important}
.pv10-header .pv9-mega .pv9-mega-top>a,.pv10-header .pv9-mega .pv9-mega-foot a{color:#5f53df!important}
.pv10-header .pv9-mobile-menu{
  position:absolute!important;top:calc(100% + 11px)!important;left:0!important;right:0!important;
  width:100%;border-radius:20px!important;
  border:1px solid #e6e5f1;
  background:#fff!important;color:#212641!important;
  box-shadow:0 24px 54px rgba(10,16,52,.23);
  z-index:230!important;overflow-y:auto;
  max-height:calc(100dvh - 100px);
}
.pv10-header .pv9-mobile-menu .pv-shell{width:calc(100% - 34px)!important}
.pv10-header .pv9-mobile-menu .pv9-mobile-link{color:#212641!important}
.pv10-header .pv9-mobile-menu .pv9-mobile-categories>summary{color:#212641!important}
.pv10-header .pv9-mobile-menu[hidden]{display:none!important}

/* Header is an overlay, not a blank white horizontal strip.
   Ensure existing tool, directory, category and legal page content is unobscured. */
html{scroll-padding-top:105px}
main#pv-main:not(:has(.pv8-hero)){padding-top:100px!important}
main#pv-main:has(.pv8-hero){padding-top:0!important}
.pv8-hero{padding-top:clamp(156px,10.3vw,194px)!important}
#pv3-tools{scroll-margin-top:104px}
.pv9-footer{scroll-margin-top:98px}

/* Smooth section-aware palette changes without a forced layout animation. */
@media(max-width:1020px){
  .pv10-header .pv9-header-inner{
    grid-template-columns:minmax(0,1fr) auto!important;
    height:61px!important;min-height:61px!important;
    padding:0 9px 0 14px!important;
  }
  .pv10-header .pv9-desktop-nav{display:none!important}
  .pv10-header .pv9-mobile-toggle{
    display:inline-flex!important;align-items:center;justify-content:center;
    height:42px!important;min-height:42px!important;
    min-width:43px!important;
    border-radius:999px!important;padding:0 12px!important;
    border:1px solid var(--pv10-line)!important;
    background:var(--pv10-hover)!important;
    color:var(--pv10-text)!important;
    box-shadow:none!important;transition:background-color .3s,color .3s;
  }
  .pv10-header .pv9-menu-caption{font-size:11px!important;color:var(--pv10-text)!important}
  .pv10-header .pv9-menu-lines i{background:var(--pv10-text)!important}
  .pv10-header .pv9-header-cta{min-height:40px!important;height:40px!important;font-size:11px!important}
}
@media(max-width:690px){
  .pv-header.pv10-header{top:11px!important}
  .pv10-header .pv9-nav-wrap{width:calc(100% - 22px)!important}
  .pv10-header.pv10-scrolled .pv9-nav-wrap{width:calc(100% - 22px)!important}
  .pv10-header .pv9-header-inner{height:58px!important;min-height:58px!important;padding:0 8px 0 12px!important}
  .pv10-header .pv-mark svg{width:32px!important;height:32px!important}
  .pv10-header .pv-wordmark{font-size:21px!important}
  .pv10-header .pv9-header-cta{min-width:0!important;height:39px!important;min-height:39px!important;padding:0 13px!important;font-size:10px!important}
  .pv10-header .pv9-mobile-toggle{height:39px!important;min-height:39px!important;min-width:41px!important;padding:0 10px!important}
  .pv10-header .pv9-mobile-menu{max-height:calc(100dvh - 85px)}
  .pv-app .pv8-hero{padding-top:131px!important}
  .pv-app main#pv-main:not(:has(.pv8-hero)){padding-top:86px!important}
}
@media(max-width:430px){
  .pv10-header .pv9-header-inner{padding:0 8px 0 10px!important;gap:5px!important}
  .pv10-header .pv-logo{gap:6px!important}
  .pv10-header .pv-mark svg{width:29px!important;height:29px!important}
  .pv10-header .pv-wordmark{font-size:19px!important}
  .pv10-header .pv9-header-actions{gap:6px!important}
  .pv10-header .pv9-header-cta{padding:0 11px!important;font-size:10px!important}
  .pv10-header .pv9-mobile-toggle{min-width:40px!important;width:40px!important;padding:0!important}
  .pv10-header .pv9-menu-caption{display:none!important}
  .pv10-header .pv9-mobile-categories>div{grid-template-columns:1fr}
}
@media(max-width:345px){
  .pv10-header .pv9-header-cta{display:none!important}
  .pv10-header .pv-wordmark{font-size:20px!important}
}
/* Reduce expensive effects on lower-power mobile hardware. */
@media(prefers-reduced-motion:reduce){
 .pv10-header .pv9-nav-wrap,.pv10-header .pv-wordmark,
 .pv10-header .pv9-nav-link,.pv10-header .pv9-header-cta,
 .pv10-header .pv9-mobile-toggle{transition:none!important}
}
