/* Shared Kanban Canada header. */
#kc-site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.94); backdrop-filter: blur(12px); border-bottom: 1px solid transparent; font-family: "Nunito Sans",sans-serif; }
#kc-site-header .nav { box-sizing: border-box; width: 100%; max-width: 1180px; padding: 0 24px; margin: 0 auto; height: auto; min-height: 0; display: flex; align-items: center; justify-content: initial; gap: 24px; }
#kc-site-header .brand { display: flex; align-items: flex-start; flex: 0 0 192px; height: 148px; overflow: hidden; text-decoration: none; }
#kc-site-header .brand > img { width: 192px; height: auto; flex-shrink: 0; display: block; }
#kc-site-header .menu { display: flex; gap: 2px; list-style: none; margin: 0 0 0 auto; padding: 0; }
#kc-site-header .menu a { display: block; padding: .5em .95em; border-radius: 999px; text-decoration: none; color: #0b1d42; font-size: .96rem; font-weight: 600; line-height: 1.5; white-space: nowrap; }
#kc-site-header .menu a:hover { background: #edf3fb; }
#kc-site-header .menu a[aria-current="page"] { color: #0047ab; background: #e7eefb; }
#kc-site-header .nav-actions { display: flex; align-items: center; gap: 10px; }
#kc-site-header .nav-cta { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; min-height: 48px; padding: 0 22px; font: 800 .94rem/1.3 "Nunito Sans",sans-serif; text-decoration: none; white-space: nowrap; }
#kc-site-header .burger { display: none; flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid #d6e1f1; border-radius: 50%; background: #fff; cursor: pointer; }
#kc-site-header .burger span, #kc-site-header .burger span::before, #kc-site-header .burger span::after { display: block; width: 18px; height: 2px; background: #0b1d42; margin: auto; position: relative; transition: .2s; }
#kc-site-header .burger span::before, #kc-site-header .burger span::after { content: ""; position: absolute; left: 0; }
#kc-site-header .burger span::before { top: -6px; }
#kc-site-header .burger span::after { top: 6px; }
#kc-site-header.nav-open .burger span { background: transparent; }
#kc-site-header.nav-open .burger span::before { top: 0; transform: rotate(45deg); }
#kc-site-header.nav-open .burger span::after { top: 0; transform: rotate(-45deg); }
@media(max-width:960px) {
 #kc-site-header .burger { display: block; }
 #kc-site-header .nav-actions { margin-left: auto; }
 #kc-site-header .menu { display: none; position: absolute; inset: 100% 0 auto; margin: 0; flex-direction: column; background: #fff; padding: 8px 18px 18px; border-bottom: 1px solid #d6e1f1; }
 #kc-site-header.nav-open .menu { display: flex; }
 #kc-site-header .menu a { padding: .85em 1em; border-radius: 10px; }
}
@media(max-width:560px) {
 #kc-site-header .nav { padding-inline: 18px; gap: 12px; }
 #kc-site-header .brand { flex-basis: 136px; height: 105px; }
 #kc-site-header .brand > img { width: 136px; }
 #kc-site-header .nav-cta { min-height: 42px; padding: 8px 12px; font-size: .85rem; white-space: normal; text-align: center; }
 #kc-site-header .nav-actions { gap: 8px; }
}
    .nav-team-cta{
      position:relative;
      overflow:hidden;
      color:#fff !important;
      background:linear-gradient(100deg,#A31925 0%,#A31925 48%,#2D4A67 100%);
      border:1px solid rgba(255,255,255,.18);
      box-shadow:0 10px 24px rgba(217,72,65,.24),0 0 0 0 rgba(11,120,165,.22);
      min-height:48px;
      padding:0 22px;
      transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
      animation:teamCtaPulse 2.8s ease-in-out infinite;
    }
    .nav-team-cta:before{
      content:"";
      position:absolute;
      top:-40%;
      left:-35%;
      width:28%;
      height:180%;
      background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);
      transform:rotate(18deg);
      animation:teamCtaShine 4.4s ease-in-out infinite;
      pointer-events:none;
    }
    .nav-team-cta span{
      display:inline-block;
      font-size:1.05rem;
      line-height:1;
      transition:transform .22s ease;
    }
    .nav-team-cta:hover{
      color:#fff !important;
      transform:translateY(-2px) scale(1.025);
      filter:saturate(1.08);
      box-shadow:0 16px 34px rgba(45,74,103,.24),0 0 0 5px rgba(163,25,37,.10);
    }
    .nav-team-cta:hover span{transform:translateY(3px)}
    .nav-team-cta:focus-visible{
      outline:3px solid rgba(255,212,91,.75);
      outline-offset:3px;
    }
    @keyframes teamCtaPulse{
      0%,100%{box-shadow:0 10px 24px rgba(163,25,37,.24),0 0 0 0 rgba(45,74,103,0)}
      50%{box-shadow:0 12px 30px rgba(163,25,37,.30),0 0 0 7px rgba(45,74,103,.11)}
    }
    @keyframes teamCtaShine{
      0%,72%,100%{left:-35%;opacity:0}
      78%{opacity:1}
      90%{left:120%;opacity:0}
    }
    @media (prefers-reduced-motion:reduce){
      .nav-team-cta,.nav-team-cta:before{animation:none}
    }



/* Align anchor destinations with the compact header. */
section[id], [id="enquire"], .legacy-anchor { scroll-margin-top: 164px; }
.anchor { top: -164px; }
.about-intro, .est-card { top: 164px; }
@media(max-width:560px) { section[id], [id="enquire"], .legacy-anchor { scroll-margin-top: 121px; } .anchor { top: -121px; } }
@media(max-width:400px) { #kc-site-header .nav { padding-inline: 12px; gap: 8px; } #kc-site-header .nav-cta { padding-inline: 8px; font-size: .8rem; } }
