/* Shared header styling, matching the site's original header. */
.header{position:sticky;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--container-width,1024px);height:var(--header-height,4rem);margin:0 auto;padding:0 var(--spacing-sm,22px);background:#fff}
.header .logo{display:flex;align-items:center;gap:.5rem;text-decoration:none}
.header .logo-icon{width:var(--font-subtitle,1.375rem);height:var(--font-subtitle,1.375rem)}
.header .logo-text{color:var(--primary-color,#0064ff);font-size:var(--font-subtitle,1.375rem);font-weight:600}
.header .nav{display:flex;gap:2.5rem}
.header .nav a{color:var(--text-dark,#000);font-size:var(--font-text,1rem);font-weight:300;text-decoration:none;transition:color .2s}
.header .nav:where(:hover,:focus-within) .nav-item:not(:where(:hover,:focus-within))>.nav-trigger{color:var(--text-muted,#6c6c6c)}
.header .nav a:focus-visible{outline:2px solid var(--text-muted,#6c6c6c);outline-offset:2px}
.header .nav-item{position:relative}
.header .nav-trigger{display:inline-flex;align-items:center;gap:.35rem}
.header .nav-item--dropdown::after{content:"";position:absolute;left:0;right:0;top:100%;height:.9rem}
.header .nav-dropdown{position:absolute;top:calc(100% + .75rem);left:50%;z-index:1001;display:grid;gap:.25rem;min-width:16rem;padding:.75rem;border:1px solid rgba(0,100,255,.12);border-radius:var(--border-radius,15px);background:#fff;box-shadow:0 18px 40px rgba(21,32,55,.12);opacity:0;pointer-events:none;transform:translate(-50%,-.35rem);transition:opacity .18s ease,transform .18s ease}
.header .nav-dropdown--compact{min-width:11rem}
.header .nav-dropdown a{display:block;padding:.5rem .6rem;border-radius:.625rem;white-space:nowrap}
.header .nav-item--dropdown:hover .nav-dropdown,.header .nav-item--dropdown:focus-within .nav-dropdown{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
.header .btn-request{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:var(--ctrl,36px);padding:0 14px;border:1.5px solid var(--primary-color,#0064ff);border-radius:var(--border-radius,15px);background:#fff;color:var(--primary-color,#0064ff);font-size:var(--font-text,1rem);line-height:1;text-decoration:none;transition:background-color .2s,color .2s,opacity .2s,border-color .2s}
.header .btn-request:hover,.header .btn-request:focus-visible{background:var(--primary-color,#0064ff);color:#fff;outline:none}
.header .menu-toggle{display:none;position:relative;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer}
.header .menu-toggle::before,.header .menu-toggle::after{content:"";position:absolute;left:50%;width:22px;height:1.5px;border-radius:2px;background:var(--text-dark,#000);box-shadow:none;transition:transform .2s ease}
.header .menu-toggle::before{transform:translate(-50%,-4px)}
.header .menu-toggle::after{transform:translate(-50%,4px)}
.header .menu-toggle[aria-expanded="true"]::before{transform:translate(-50%,0) rotate(45deg)}
.header .menu-toggle[aria-expanded="true"]::after{transform:translate(-50%,0) rotate(-45deg)}
.header .menu-toggle:focus-visible{outline:2px solid var(--primary-color,#0064ff);outline-offset:2px}
@media(max-width:1024px){.header .nav{gap:1.25rem}}
@media(max-width:768px){
  .header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;height:auto;padding:.5rem .75rem}
  .header .logo-text{display:none}
  .header .logo-icon{width:var(--font-subtitle,1.375rem);height:var(--font-subtitle,1.375rem)}
  .header .btn-request{grid-column:2;justify-self:end}
  .header .menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:var(--ctrl,36px);height:var(--ctrl,36px);font-size:0;line-height:1}
  .header .nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;gap:1rem;max-height:calc(100vh - var(--ctrl,36px) - 1rem);padding:.75rem 1rem;overflow-y:auto;overscroll-behavior:contain;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.06)}
  .header .nav.nav--open{display:flex}
  .header .nav a{font-size:var(--font-text,1rem)}
  .header .nav-item{width:100%}
  .header .nav-trigger{width:100%;justify-content:space-between}
  .header .nav-dropdown{position:static;min-width:0;padding:.25rem 0 0 .75rem;gap:.125rem;border:0;box-shadow:none;opacity:1;pointer-events:auto;transform:none}
  .header .nav-dropdown a{padding:.35rem 0;white-space:normal;color:var(--text-muted,#6c6c6c)}
  .header .nav-item--dropdown:hover .nav-dropdown,.header .nav-item--dropdown:focus-within .nav-dropdown{transform:none}
}
@media(max-width:480px){.header .btn-request{padding:.5rem 1rem}}
