/* ToJestDom RC271 — full-width flush-top premium header */
:root{
  --tjd-header-deep:#06182b;
  --tjd-header-mid:#082b49;
  --tjd-header-blue:#2aa8ff;
  --tjd-header-line:rgba(75,187,255,.68);
}
html,body{margin-top:0!important;padding-top:0!important}
.topbar{
  position:sticky;
  top:0;
  left:0;
  right:0;
  width:100%;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  z-index:1000;
  background:
    radial-gradient(circle at 82% -35%,rgba(48,156,255,.24),transparent 35%),
    radial-gradient(circle at 18% -70%,rgba(42,168,255,.14),transparent 36%),
    linear-gradient(90deg,#051527 0%,#07233d 48%,#06182b 100%)!important;
  box-shadow:
    0 1px 0 rgba(94,202,255,.55),
    0 9px 30px rgba(3,17,31,.18)!important;
  backdrop-filter:none!important;
}
.topbar:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:1px;
  background:linear-gradient(90deg,transparent 0%,rgba(53,173,255,.35) 17%,rgba(91,207,255,.95) 66%,rgba(53,173,255,.32) 88%,transparent 100%);
  box-shadow:0 0 13px rgba(53,173,255,.42);
  pointer-events:none;
}
.topbar .wrap.nav{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 clamp(22px,3.1vw,58px)!important;
  height:86px!important;
  display:flex;
  align-items:center;
  gap:clamp(18px,2.2vw,38px);
}
.brand.brandLogo{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  width:205px;
  height:78px;
  margin-right:auto;
  overflow:visible;
}
.brand.brandLogo img{
  display:block;
  width:205px;
  height:auto;
  max-height:78px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 4px 13px rgba(0,0,0,.22));
}
.brandFallback{display:none!important}
.topbar .navlinks{
  display:flex;
  align-items:center;
  gap:clamp(22px,2.4vw,42px);
  color:#f3f8ff!important;
  font-weight:650;
  margin:0;
}
.topbar .navlinks a{
  color:#f3f8ff!important;
  opacity:.94;
  transition:opacity .2s,color .2s,transform .2s;
}
.topbar .navlinks a:hover{
  color:#70c9ff!important;
  opacity:1;
  transform:translateY(-1px);
}
.topbar .navlinks a:after{
  background:linear-gradient(90deg,#43b7ff,#8be0ff)!important;
  bottom:-10px!important;
  height:2px!important;
}
.topbar .navcta{
  flex:0 0 auto;
  margin-left:auto;
  min-height:48px;
  padding:0 23px!important;
  color:#fff!important;
  border:1px solid rgba(126,215,255,.28)!important;
  background:linear-gradient(135deg,#198ddf 0%,#2baeff 58%,#3cb8ff 100%)!important;
  box-shadow:0 10px 28px rgba(21,145,226,.28), inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.topbar .navcta:hover{
  background:linear-gradient(135deg,#249be9,#41b9ff)!important;
  box-shadow:0 13px 32px rgba(21,145,226,.36), inset 0 1px 0 rgba(255,255,255,.24)!important;
  transform:translateY(-1px);
}
/* The page begins immediately under the header; no floating shell around the menu. */
body:not([data-project-slug]) .hero{margin-top:0!important}
@media(max-width:980px){
  .topbar .wrap.nav{height:76px!important;padding:0 20px!important}
  .brand.brandLogo{width:180px;height:68px}
  .brand.brandLogo img{width:180px;max-height:68px}
  .topbar .navlinks{display:none!important}
}
@media(max-width:650px){
  .topbar .wrap.nav{height:68px!important;padding:0 14px!important;gap:10px}
  .brand.brandLogo{width:150px;height:60px}
  .brand.brandLogo img{width:150px;max-height:60px}
  .topbar .navcta{min-height:40px;padding:0 14px!important;font-size:12px!important}
}
