/* Floating IONEA masthead — independent from hero composition. */
.header.header {
  position: fixed;
  top: 16px;
  left: 3.5%;
  right: 3.5%;
  height: 80px;
  max-width: 1800px;
  margin-inline: auto;
  padding: 10px 18px 10px 24px;
  display: flex;
  gap: 22px;
  border: 1px solid rgba(255,255,255,.86);
  border-radius: 25px;
  background: rgba(249,252,255,.84);
  backdrop-filter: blur(22px) saturate(145%);
  -webkit-backdrop-filter: blur(22px) saturate(145%);
  box-shadow: 0 9px 35px rgba(16,44,85,.075), inset 0 1px 0 #fff;
  z-index: 40;
}
.header.header::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 7%;
  width: 24%;
  height: 2px;
  background: linear-gradient(90deg,transparent,#8ac72c80,#75baf47a,transparent);
  pointer-events: none;
}
.header.header .wordmark{display:flex;align-items:center;flex-shrink:0;line-height:1}
.header.header .brand-logo{width:155px;height:53px;object-fit:contain}
.header.header nav{
  position:relative;display:flex;align-items:center;justify-content:center;
  flex:0 1 auto;gap:2px;margin:0 auto;padding:4px;
  border:1px solid rgba(166,188,219,.20);border-radius:50px;
  background:rgba(218,231,249,.25);
}
.header.header nav a{
  position:relative;padding:11px 13px;border-radius:50px;
  font-size:13px;font-weight:500;white-space:nowrap;
  transition:color .2s,background .2s,box-shadow .2s;
}
.header.header nav a::after{
  content:'';position:absolute;bottom:5px;left:calc(50% - 8px);
  width:16px;height:2px;border-radius:3px;background:#4388ec;
  transform:scaleX(0);transition:transform .2s;
}
.header.header nav a:hover,.header.header nav a:focus-visible,.header.header nav a.is-current{
  background:var(--surface);color:var(--blue);box-shadow:0 2px 8px #1539640a;
}
.header.header nav a:hover::after,.header.header nav a.is-current::after{transform:scaleX(1)}
.header .header-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}
.header.header .button.small,.header.header .login-trigger{
  display:inline-flex;align-items:center;justify-content:center;
  font-size:13px;min-height:44px;height:44px;padding:11px 21px;min-width:0;
  border-radius:50px;background:var(--navy);color:white;gap:10px;
  box-shadow:0 4px 12px #112e5d12;
}
.header.header .button.small:hover,.header.header .login-trigger:hover{background:#1c4384}
.header.header .button.small>span{font-size:23px;transition:transform .2s}
.header.header .button.small:hover>span{transform:translateX(3px)}
.header.header .login-trigger[aria-expanded="true"]{background:#1c4384}
.header.header .theme-toggle,.header.header .menu{
  width:42px;height:42px;margin:0;border-color:rgba(147,169,201,.30);
  background:rgba(255,255,255,.55);color:#163154;box-shadow:none;
}
.header.header .theme-toggle:hover{background:#e9f1ff;border-color:#b7cdea}
.header.header .menu{display:none}
.header.header .login-dropdown{margin:0}
.header.header .login-options{top:calc(100% + 18px);right:0;padding:9px;border-radius:18px;box-shadow:0 22px 60px #10264425}
.header.header .login-options button{padding:15px 13px;border-radius:12px}
.header.header .login-options strong{font-weight:600}
html{scroll-padding-top:125px}
[data-theme="dark"] .header.header{
  background:rgba(12,27,47,.87);border-color:rgba(102,133,172,.33);
  box-shadow:0 12px 38px #0003,inset 0 1px 0 #ffffff08;
}
[data-theme="dark"] .header.header nav{background:#08152655;border-color:#6584ac1f}
[data-theme="dark"] .header.header nav a:hover,[data-theme="dark"] .header.header nav a.is-current{background:#203a5c}
[data-theme="dark"] .header.header .theme-toggle,[data-theme="dark"] .header.header .menu{background:#182e4b;color:#dceaff;border-color:#45608277}
@media(max-width:1400px){
  .header.header{left:2%;right:2%;padding-inline:18px;gap:14px}
  .header.header .brand-logo{width:135px}
  .header.header nav a{font-size:12px;padding:11px 10px}
  .header.header .button.small,.header.header .login-trigger{padding-inline:17px;font-size:12px}
}
@media(max-width:1120px){
  .header.header{height:74px;top:12px;border-radius:22px;gap:16px}
  .header .header-actions{margin-left:auto}
  .header.header .menu{display:grid}
  .header.header nav{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;margin:0;padding:12px;border-radius:19px;background:var(--surface);border:1px solid var(--line);box-shadow:0 15px 40px #16305720}
  .header.header nav.open{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
  .header.header nav a{text-align:center;font-size:14px;padding:16px 12px;border-radius:12px}
  [data-theme="dark"] .header.header nav{background:#0e213a}
  .hero-copy{padding-top:160px}
}
@media(max-width:600px){
  .header.header{left:12px;right:12px;top:10px;height:68px;padding:9px 11px 9px 15px;gap:9px;border-radius:20px}
  .header.header .brand-logo{width:116px;height:42px}
  .header.header .button.small{display:none}
  .header .header-actions{gap:6px}
  .header.header .login-trigger{height:38px;min-height:38px;padding:10px 15px;font-size:12px;gap:7px}
  .header.header .theme-toggle,.header.header .menu{width:35px;height:35px}
  .header.header .menu{font-size:20px}
  .header.header .theme-toggle svg{width:17px;height:17px}
  .header.header nav.open{grid-template-columns:1fr 1fr}
  .header.header .login-options{right:-81px;top:calc(100% + 18px);width:240px}
  .hero-copy{padding-top:117px}
}
@media(max-width:360px){
  .header.header{left:8px;right:8px;padding-inline:10px;gap:5px}
  .header.header .brand-logo{width:100px}
  .header .header-actions{gap:5px}
  .header.header .login-trigger{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){.header.header *,.header.header *::after{transition:none!important}}
