.tk-header-variant-mega { overflow: visible !important; }
.tk-header-variant-mega > .container { position: relative; }
.tk-header-variant-mega .navbar-links-main,
.tk-header-variant-mega .navbar-links-main > div:first-child { overflow: visible !important; }
.tk-header-mega-shell { position: static; }
.tk-header-mega-nav { align-items: center; display: flex; gap: 4px; height: 76px; }
.tk-header-mega-trigger,.tk-header-mega-link { align-items: center; background: transparent; border: 0; border-radius: 7px; color: #4c4c4c; cursor: pointer; display: flex; font: inherit; font-size: 15px; font-weight: 400; gap: 6px; height: 76px; padding: 0 14px; text-decoration: none !important; transition: background-color .18s ease, color .18s ease, box-shadow .18s ease; white-space: nowrap; }
.tk-header-mega-trigger:hover,
.tk-header-mega-trigger:focus-visible,
.tk-header-mega-link:hover,
.tk-header-mega-link:focus-visible { background: #f1f6ff; color: #173a72; outline: none; }
.tk-header-mega-trigger.is-active { background: #eaf2ff; box-shadow: inset 0 -3px 0 #244587; color: #173a72; outline: none; }
.tk-header-mega-trigger .tk-chevron { border: solid currentColor; border-width: 0 1px 1px 0; display: inline-block; height: 6px; margin-top: -3px; transform: rotate(45deg); transition: transform .2s ease; width: 6px; }
.tk-header-mega-trigger.is-active .tk-chevron { margin-top: 3px; transform: rotate(-135deg); }
.tk-header-mega-mount { left: 50%; pointer-events: none; position: absolute; top: calc(100% - 1px); transform: translateX(-50%); width: min(1335px, calc(100vw - 40px)); z-index: 100050; }
.tk-header-mega-panel { --blue:#244587; --red:#f45649; --green:#087b5b; --orange:#ff8a24; background: #fff; border: 1px solid #dbe4eb; border-radius: 0 0 16px 16px; box-shadow: 0 24px 55px rgba(22,55,83,.2); opacity: 0; overflow: hidden; pointer-events: none; transform: translateY(-8px); transition: opacity .18s ease, transform .18s ease; visibility: hidden; }
.tk-header-mega-panel.is-open { opacity: 1; pointer-events: auto; transform: translateY(0); visibility: visible; }
.tk-header-mega-panel::before { background: linear-gradient(90deg,var(--blue) 0 25%,var(--red) 25% 50%,var(--green) 50% 75%,var(--orange) 75%); content:""; display:block; height:4px; }
.tk-header-mega-heading { align-items: center; border-bottom: 1px solid #e7edf2; display:flex; gap:24px; justify-content:space-between; padding:24px 32px 20px; }
.tk-header-mega-eyebrow { align-items:center; color:#244587; display:flex; font-size:10px; font-weight:800; gap:7px; letter-spacing:.14em; margin:0 0 7px; }
.tk-header-mega-eyebrow i { background:#ff6252; border-radius:50%; box-shadow:0 0 0 4px #fff0ee; display:block; height:6px; width:6px; }
.tk-header-mega-heading h2 { color:#244587; font-size:28px; font-weight:750; line-height:1.12; margin:0 0 8px; }
.tk-header-mega-heading p:last-child { color:#77849a; font-size:13px; line-height:1.45; margin:0; }
.tk-header-mega-cta { align-items:center; background:#244587; border-radius:7px; box-shadow:0 10px 20px rgba(36,69,135,.2); color:#fff !important; display:inline-flex; flex:0 0 auto; font-size:12px; font-weight:700; gap:15px; padding:14px 18px; text-decoration:none; transition:background-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.tk-header-mega-cta:hover,.tk-header-mega-cta:focus-visible { background:#173a72; box-shadow:0 12px 24px rgba(36,69,135,.28); outline:none; transform:translateY(-1px); }
.tk-header-mega-cta:active { box-shadow:0 5px 12px rgba(36,69,135,.2); transform:translateY(0); }
.tk-header-mega-cards { display:grid; gap:14px; grid-template-columns:repeat(2,minmax(0,1fr)); padding:20px 32px; }
.tk-header-mega-card { align-items:center; border:1px solid #d6e0e7; border-radius:16px; color:inherit !important; display:grid; gap:16px; grid-template-columns:94px minmax(0,1fr) 28px; min-height:110px; padding:11px 15px 11px 10px; position:relative; text-decoration:none !important; transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.tk-header-mega-card::before { background:var(--tone); content:""; height:31px; left:-1px; position:absolute; top:50%; transform:translateY(-50%); width:4px; }
.tk-header-mega-card:hover,.tk-header-mega-card:focus-visible { background:#f8fbff; border-color:#b9cce6; box-shadow:0 9px 22px rgba(29,66,94,.1); outline:none; transform:translateY(-2px); }
.tk-header-mega-card:active { background:#edf5ff; box-shadow:0 4px 12px rgba(29,66,94,.1); transform:translateY(0); }
.tk-header-mega-card-icon { align-items:center; background:#fff; border-radius:10px; box-shadow:0 7px 16px rgba(30,60,80,.12); display:flex; height:88px; justify-content:center; overflow:hidden; width:88px; }
.tk-header-mega-card-icon img { display:block; height:100%; object-fit:contain; width:100%; }
.tk-header-mega-card-copy { min-width:0; }
.tk-header-mega-title { align-items:center; color:#182d50; display:flex; flex-wrap:wrap; font-size:14px; font-weight:750; gap:8px; line-height:1.25; margin-bottom:7px; }
.tk-header-mega-badge { background:#fff0ed; border-radius:100px; color:#ee5b4b; font-size:8px; font-weight:800; letter-spacing:.08em; padding:4px 7px; text-transform:uppercase; }
.tk-header-mega-description { color:#77849a; display:block; font-size:11px; line-height:1.45; }
.tk-header-mega-arrow { align-items:center; background:color-mix(in srgb,var(--tone) 9%,white); border-radius:50%; color:var(--tone); display:flex; font-size:14px; height:25px; justify-content:center; width:25px; }
.tk-tone-blue { --tone:#244587; }.tk-tone-red { --tone:#f45649; }.tk-tone-green { --tone:#087b5b; }.tk-tone-orange { --tone:#ff8a24; }
.tk-header-lab-icon { background-image:url('lab-studios-sprite.png'); background-repeat:no-repeat; background-size:831px 400px; height:88px; width:88px; }
.tk-header-lab-maker { background-position:-49px -139px; }.tk-header-lab-proto { background-position:-445px -139px; }.tk-header-lab-code { background-position:-49px -278px; }.tk-header-lab-ai { background-position:-446px -278px; }
.tk-header-mega-quick { align-items:center; border-top:1px solid #e7edf2; display:flex; flex-wrap:wrap; gap:8px; padding:14px 32px 17px; }
.tk-header-mega-quick strong { color:#75839a; font-size:9px; letter-spacing:.13em; margin-right:4px; text-transform:uppercase; }
.tk-header-mega-quick a { background:#f1f5f8; border:1px solid #dfe7ed; border-radius:5px; color:#607087 !important; font-size:10px; font-weight:650; padding:7px 11px; text-decoration:none !important; transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease; }
.tk-header-mega-quick a:hover,.tk-header-mega-quick a:focus-visible { background:#eaf2ff; border-color:#b9cce6; color:#173a72 !important; outline:none; transform:translateY(-1px); }
.tk-header-mega-quick a:active { background:#dfeaff; transform:translateY(0); }

@media (max-width:1279px) {
  .navbar.tk-header-variant-mega .btn-navbar { display:block !important; order:3; position:relative; z-index:100060; }
  .navbar.tk-header-variant-mega .btn-navbar { align-items:center; background:transparent !important; border:0 !important; color:#17243a !important; display:flex !important; flex:0 0 42px; height:42px; justify-content:center; margin:0 !important; padding:0 !important; visibility:visible !important; width:42px; }
  .navbar.tk-header-variant-mega .btn-navbar .navbar-toggler-icon { background-image:none !important; display:block; font-size:26px; height:26px; line-height:1; text-align:center; width:26px; }
  .navbar.tk-header-variant-mega .btn-navbar[aria-expanded="true"] .navbar-toggler-icon { font-size:0; }
  .navbar.tk-header-variant-mega .btn-navbar[aria-expanded="true"] .navbar-toggler-icon::after { content:"×"; font-size:32px; line-height:26px; }
  .navbar.tk-header-variant-mega .navbar-links-main { background:#fff; height:auto !important; left:0; max-height:calc(100vh - 103px); min-height:0 !important; overflow-y:auto !important; position:absolute; top:103px; width:100% !important; }
  .navbar.tk-header-variant-mega .navbar-links-main.collapse:not(.show) { display:none !important; }
  .navbar.tk-header-variant-mega .navbar-links-main.show { display:flex !important; }
  /* The legacy mobile header zeroes the first collapse child. Restore it for
     the redesigned navigation so the opened menu has an actual height. */
  .navbar.tk-header-variant-mega .navbar-links-main,
  .navbar.tk-header-variant-mega .navbar-links-main > div:first-child { height:auto !important; min-height:0 !important; }
  .tk-header-mega-shell { width:100%; }
  .tk-header-mega-nav { align-items:stretch; flex-direction:column; gap:0; height:auto; padding:10px 20px; }
  .tk-header-mega-trigger,.tk-header-mega-link { border-bottom:1px solid #e7edf2; height:48px; justify-content:space-between; padding:0 6px; width:100%; }
  .tk-header-mega-mount { left:auto; position:static; transform:none; width:100%; }
  .tk-header-mega-panel { border:0; border-radius:0; box-shadow:none; display:none; opacity:1; transform:none; visibility:visible; }
  .tk-header-mega-panel.is-open { display:block; }
  .tk-header-mega-heading { align-items:flex-start; padding:20px; }
  .tk-header-mega-heading h2 { font-size:24px; }
  .tk-header-mega-cards { padding:16px 20px; }
  .tk-header-mega-quick { padding:13px 20px 20px; }
}
@media (max-width:767px) {
  .navbar.tk-header-variant-mega .navbar-links-main { max-height:calc(100dvh - 103px); }
  .tk-header-mega-heading { flex-direction:column; }
  .tk-header-mega-cards { grid-template-columns:1fr; }
  .tk-header-mega-card { grid-template-columns:72px minmax(0,1fr) 26px; min-height:92px; }
  .tk-header-mega-card-icon,.tk-header-lab-icon { height:68px; width:68px; }
  .tk-header-lab-icon { background-size:642px 309px; }
  .tk-header-lab-maker { background-position:-38px -107px; }.tk-header-lab-proto { background-position:-344px -107px; }.tk-header-lab-code { background-position:-38px -215px; }.tk-header-lab-ai { background-position:-344px -215px; }
}
@media (max-width:420px) {
  .tk-header-mega-nav { padding-inline:14px; }
  .tk-header-mega-heading { padding:18px 14px; }
  .tk-header-mega-heading h2 { font-size:21px; }
  .tk-header-mega-heading p:last-child { font-size:12px; }
  .tk-header-mega-cta { justify-content:center; width:100%; }
  .tk-header-mega-cards { padding:14px; }
  .tk-header-mega-card { gap:11px; grid-template-columns:60px minmax(0,1fr) 24px; padding:10px 10px 10px 8px; }
  .tk-header-mega-card-icon,.tk-header-lab-icon { height:56px; width:56px; }
  .tk-header-mega-title { font-size:13px; }
  .tk-header-mega-description { font-size:10px; }
  .tk-header-mega-quick { padding:12px 14px 18px; }
  .tk-header-mega-quick strong { flex:0 0 100%; }
}
