/* v1.57.40: shorten the excess hero gap and show a continuous translucent LED relay */
/* Grid alignment: share ribbon row above the two equally top-aligned hero columns. */
@media (min-width:1121px) {
  .nw-shell .nw-hero {
    min-height:0!important;
    display:block!important;
    padding-top:clamp(12px,1.1vw,20px)!important;
    padding-bottom:clamp(38px,3.9vw,72px)!important;
  }
  .nw-shell .nw-hero .nw-hero-grid {
    align-items:start!important;
    align-content:start!important;
    column-gap:clamp(25px,3vw,56px)!important;
    row-gap:clamp(14px,1.3vw,25px)!important;
  }
  .nw-shell .nw-hero .nw-hero-grid>.nw-copy {
    grid-row:2;grid-column:1;
    align-self:start!important;
    position:relative!important;top:0!important;
    margin-top:0!important;padding-top:0!important;
    transform:none!important;
  }
  .nw-shell .nw-hero .nw-hero-grid>.nw-promo-wrap {
    grid-row:2;grid-column:2;
    align-self:start!important;
    justify-self:stretch!important;
    position:relative!important;top:0!important;
    margin:0!important;padding:0!important;
    transform:none!important;
    height:auto!important;
  }
  .nw-shell .nw-hero .nw-hero-grid>.nw-share-restored {
    grid-row:1;grid-column:1/-1;
    margin-bottom:0!important;
  }
  .nw-shell .nw-hero .nw-toolfirst-panel {margin:0!important;}
}
/* Desktop header breathing room: increase gaps while retaining the responsive collapse. */
@media (min-width:1501px) {
  .nw-shell .nw-nav-links {gap:clamp(24px,1.6vw,36px)!important;}
}
@media (min-width:1321px) and (max-width:1500px) {
  .nw-shell .nw-nav-links {gap:clamp(14px,1.02vw,19px)!important;}
}
@media (min-width:1131px) and (max-width:1320px) {
  .nw-shell .nw-nav-links {gap:clamp(8px,.7vw,11px)!important;}
}
/* The coloured border pulse travels in a continuous ten-stop loop. All text remains on top. */
.nw-shell .nw-hero .nw-toolfirst-grid>a {position:relative!important;isolation:isolate!important;overflow:visible!important;}
.nw-shell .nw-hero .nw-toolfirst-grid>a::before {
  content:""!important;position:absolute!important;inset:-2px!important;
  border-radius:inherit!important;border:2px solid var(--nw-led,#69dcff)!important;
  background:transparent!important;pointer-events:none!important;
  z-index:2!important;opacity:0;
  will-change:opacity,filter;
  box-shadow:0 0 12px color-mix(in srgb,var(--nw-led) 68%,transparent),
     0 0 25px color-mix(in srgb,var(--nw-led) 32%,transparent),
     inset 0 0 10px color-mix(in srgb,var(--nw-led) 10%,transparent)!important;
  animation:nw-v15740-border-relay 14s linear infinite both!important;
}
@keyframes nw-v15740-border-relay {
  0%{opacity:.70;filter:brightness(1)}
  2%,7%{opacity:1;filter:brightness(1.4)}
  9.9%{opacity:.25;filter:brightness(1)}
  10%,100%{opacity:0;filter:brightness(.8)}
}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(1)::before{animation-delay:0s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(2)::before{animation-delay:-12.6s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(3)::before{animation-delay:-11.2s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(4)::before{animation-delay:-9.8s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(5)::before{animation-delay:-8.4s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(6)::before{animation-delay:-7s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(7)::before{animation-delay:-5.6s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(8)::before{animation-delay:-4.2s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(9)::before{animation-delay:-2.8s!important}
.nw-shell .nw-hero .nw-toolfirst-grid>a:nth-child(10)::before{animation-delay:-1.4s!important}
/* v1.57.49: do not freeze homepage tile opacity. */
