/* Nile Active homepage Campaigns — canonical final production cascade. */
#campaigns.na-home-campaigns{position:relative;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:26px var(--na-site-gutter) 74px!important;box-sizing:border-box!important;overflow:clip!important;background:var(--na-cream)!important;color:var(--na-green)!important;isolation:isolate}
#campaigns.na-home-campaigns:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.18;background-image:repeating-linear-gradient(0deg,rgba(4,59,37,.03) 0 1px,transparent 1px 5px)}
#campaigns .na-home-campaigns__wrap{width:100%!important;max-width:1800px!important;min-width:0!important;margin-inline:auto!important;padding:0!important;box-sizing:border-box!important}

#campaigns .na-home-campaigns__intro{display:grid;grid-template-columns:minmax(0,.78fr) minmax(560px,1.22fr)!important;align-items:start!important;gap:clamp(26px,3.2vw,52px)!important;min-height:0!important;padding:0 0 15px!important;border:0!important}
#campaigns .na-home-campaigns__copy{max-width:620px!important;min-width:0;padding-top:2px!important}
#campaigns .na-home-campaigns__kicker{display:flex;align-items:center;gap:10px;margin:0 0 8px!important;color:rgba(4,59,37,.66)!important;font:900 9px/1.3 Archivo,Arial,sans-serif!important;letter-spacing:.2em!important;text-transform:uppercase!important}
#campaigns .na-home-campaigns__kicker span{width:8px;height:8px;border-radius:50%;background:#d9342b;box-shadow:0 0 0 5px rgba(217,52,43,.13)}
#campaigns .na-home-campaigns__copy h2{max-width:650px;margin:0;color:var(--na-green);font:italic 400 clamp(62px,5.6vw,96px)/1.015 Anton,Impact,sans-serif;letter-spacing:-.008em;text-transform:uppercase;text-wrap:balance}
#campaigns .na-home-campaigns__copy h2{max-width:620px!important;line-height:.985!important}
#campaigns .na-home-campaigns__copy>p:not(.na-home-campaigns__kicker){max-width:560px!important;margin:10px 0 0!important;color:rgba(4,59,37,.8)!important;font:750 clamp(13px,.9vw,16px)/1.42 Archivo,Arial,sans-serif!important}
#campaigns .na-home-campaigns__actions{display:flex;flex-wrap:wrap;gap:9px!important;margin-top:13px!important}
#campaigns .na-home-campaigns__actions a{min-height:39px!important;display:inline-flex;align-items:center;justify-content:center;padding:0 15px!important;border:2px solid var(--na-green);font:900 8.4px/1 Archivo,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease}
#campaigns .na-home-campaigns__primary{background:var(--na-green);color:var(--na-paper);box-shadow:5px 5px 0 var(--na-red)}
#campaigns .na-home-campaigns__secondary{background:transparent;color:var(--na-green)}
@media(hover:hover){#campaigns .na-home-campaigns__actions a:hover{transform:translate(-2px,-2px)}#campaigns .na-home-campaigns__primary:hover{box-shadow:8px 8px 0 var(--na-red)}#campaigns .na-home-campaigns__secondary:hover{background:var(--na-paper);box-shadow:6px 6px 0 var(--na-green)}}


#campaigns .na-polaroid-area{align-self:start!important;min-width:0!important}
#campaigns .na-polaroid-stack{
  position:relative!important;
  width:100%!important;
  max-width:850px!important;
  height:385px!important;
  min-height:385px!important;
  margin-left:auto!important;
  isolation:isolate!important;
}
#campaigns .na-polaroid{
  --na-photo-r:0deg;
  --na-photo-hover-r:0deg;
  position:absolute!important;
  margin:0!important;
  padding:8px 8px 48px!important;
  background:#fff8df!important;
  border:2px solid rgba(4,59,37,.3)!important;
  box-shadow:7px 8px 0 #043b25,0 14px 28px rgba(4,59,37,.1)!important;
  transform:rotate(var(--na-photo-r))!important;
  transform-origin:center!important;
  cursor:zoom-in!important;
  outline:none!important;
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
#campaigns .na-polaroid:before{top:-6px!important;width:44px!important;height:13px!important;opacity:.86!important}
#campaigns .na-polaroid img{width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.97) contrast(1.01)!important}
#campaigns .na-polaroid figcaption{
  left:9px!important;right:9px!important;bottom:7px!important;
  display:block!important;color:var(--na-green)!important;text-transform:uppercase!important;
}
#campaigns .na-polaroid figcaption b{display:block!important;font-size:8.4px!important;line-height:1.05!important;letter-spacing:.055em!important}
#campaigns .na-polaroid figcaption span{display:block!important;max-width:none!important;margin-top:3px!important;font-size:6.3px!important;font-weight:900!important;line-height:1.15!important;letter-spacing:.065em!important;text-align:left!important;opacity:.7!important}
#campaigns .na-polaroid figcaption small{display:block!important;margin-top:2px!important;font:750 5.4px/1.2 Archivo,Arial,sans-serif!important;letter-spacing:.025em!important;text-transform:none!important;opacity:.48!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#campaigns :is(.na-polaroid--koumi,.na-polaroid--mohamed) figcaption small{
  color:#b94438!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}

#campaigns .na-polaroid--team-a{
  --na-photo-r:-2deg;--na-photo-hover-r:-.2deg;
  z-index:3!important;left:0!important;top:50px!important;width:58%!important;height:300px!important;
}
#campaigns .na-polaroid--team-a img{object-position:center 43%!important}
#campaigns .na-polaroid--team-b{
  --na-photo-r:2.2deg;--na-photo-hover-r:.2deg;
  z-index:2!important;right:0!important;top:5px!important;width:46%!important;height:254px!important;
}
#campaigns .na-polaroid--team-b img{object-position:center 42%!important}
#campaigns .na-polaroid--koumi{
  --na-photo-r:1.4deg;--na-photo-hover-r:.1deg;
  z-index:5!important;left:45%!important;bottom:7px!important;width:24%!important;height:188px!important;aspect-ratio:4/5!important;
}
#campaigns .na-polaroid--koumi img{object-position:center 14%!important}
#campaigns .na-polaroid--mohamed{
  --na-photo-r:-1.5deg;--na-photo-hover-r:-.1deg;
  z-index:6!important;right:6%!important;bottom:0!important;width:23%!important;height:181px!important;aspect-ratio:4/5!important;
}
#campaigns .na-polaroid--mohamed img{object-position:center 12%!important}

@media(hover:hover){
  #campaigns .na-polaroid:hover{
    z-index:60!important;
    transform:translateY(-11px) scale(1.022) rotate(var(--na-photo-hover-r))!important;
    box-shadow:11px 13px 0 #043b25,0 24px 42px rgba(4,59,37,.17)!important;
    filter:brightness(1.015)!important;
  }
  #campaigns .na-polaroid:hover figcaption span,#campaigns .na-polaroid:hover figcaption small{opacity:.82!important}
  #campaigns :is(.na-polaroid--koumi,.na-polaroid--mohamed):hover figcaption small{opacity:1!important}
}
#campaigns .na-polaroid:focus-visible{
  z-index:60!important;
  transform:translateY(-9px) scale(1.018) rotate(var(--na-photo-hover-r))!important;
  box-shadow:10px 12px 0 #043b25,0 22px 38px rgba(4,59,37,.16)!important;
  outline:3px solid var(--na-gold)!important;
  outline-offset:4px!important;
}
#campaigns .na-polaroid-reference{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:9px;padding-top:9px;border-top:1px solid rgba(4,59,37,.22);font:900 7.4px/1.35 Archivo,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
#campaigns .na-polaroid-reference span{color:rgba(4,59,37,.6)}
#campaigns .na-polaroid-reference a{color:var(--na-green);border-bottom:1px solid currentColor;transition:transform .15s ease,opacity .15s ease}
@media(hover:hover){#campaigns .na-polaroid-reference a:hover{transform:translateY(-1px);opacity:.7}}
#campaigns .na-polaroid-reference{margin-top:5px!important;padding-top:7px!important;font-size:7px!important}
#campaigns .na-races-section{padding-top:17px!important}

/* Full-screen editorial viewer. */
body.na-campaign-gallery-open{overflow:hidden!important}
.na-campaign-viewer{
  width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;
  background:rgba(2,23,13,.96);color:#fff4d4;overflow:hidden;
}
.na-campaign-viewer::backdrop{background:rgba(2,23,13,.72);backdrop-filter:blur(3px)}
.na-campaign-viewer__shell{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr) 96px;grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;padding:clamp(24px,3vw,50px);gap:18px}
.na-campaign-viewer__close{position:absolute;right:clamp(20px,3vw,46px);top:clamp(18px,2.4vw,38px);z-index:4;width:44px;height:44px;border:2px solid #fff4d4;border-radius:0;background:#cf352f;color:#fff4d4;font:900 24px/1 Archivo,Arial,sans-serif;cursor:pointer;box-shadow:5px 5px 0 #efbf3d}
.na-campaign-viewer__nav{align-self:center;min-height:82px;padding:12px 8px;border:0;border-top:2px solid rgba(255,244,212,.52);border-bottom:2px solid rgba(255,244,212,.52);background:transparent;color:#fff4d4;font:900 8px/1.35 Archivo,Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}
.na-campaign-viewer__nav b{display:block;margin-bottom:5px;font-size:25px;line-height:1;color:#efbf3d}
.na-campaign-viewer__nav:hover,.na-campaign-viewer__nav:focus-visible{background:#fff4d4;color:#043b25;transform:translateY(-2px);outline:none}
.na-campaign-viewer__stage{display:grid;place-items:center;min-width:0;min-height:0;padding:20px 56px}
.na-campaign-viewer__stage img{display:block;max-width:min(100%,1120px);max-height:calc(100dvh - 205px);width:auto;height:auto;object-fit:contain;border:9px solid #fff8df;box-shadow:12px 14px 0 #043b25,0 28px 60px rgba(0,0,0,.38)}
.na-campaign-viewer__caption{grid-column:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding-top:12px;border-top:1px solid rgba(255,244,212,.32)}
.na-campaign-viewer__caption b{display:block;font:italic 400 clamp(28px,3vw,46px)/.9 Anton,Impact,sans-serif;text-transform:uppercase}
.na-campaign-viewer__caption span{display:block;margin-top:5px;color:#efbf3d;font:900 8px/1.25 Archivo,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}
.na-campaign-viewer__caption small{display:block;margin-top:5px;max-width:680px;color:rgba(255,244,212,.65);font:700 8px/1.45 Archivo,Arial,sans-serif}
.na-campaign-viewer[data-gallery-kind="koumi"] .na-campaign-viewer__caption small,
.na-campaign-viewer[data-gallery-kind="mohamed"] .na-campaign-viewer__caption small{color:#ff6b5f;font-weight:900;letter-spacing:.055em;text-transform:uppercase}
.na-campaign-viewer__caption a{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:2px solid #fff4d4;color:#fff4d4;font:900 7px/1 Archivo,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.na-campaign-viewer__caption a:hover,.na-campaign-viewer__caption a:focus-visible{background:#fff4d4;color:#043b25;outline:none}

@media(max-width:1050px){
  #campaigns .na-home-campaigns__intro{grid-template-columns:minmax(0,.82fr) minmax(470px,1.18fr)!important;gap:26px!important}
  #campaigns .na-polaroid-stack{height:355px!important;min-height:355px!important}
  #campaigns .na-polaroid--team-a{top:48px!important;width:59%!important;height:268px!important}
  #campaigns .na-polaroid--team-b{width:45%!important;height:224px!important}
  #campaigns .na-polaroid--koumi{left:44%!important;width:25%!important;height:171px!important}
  #campaigns .na-polaroid--mohamed{right:4%!important;width:24%!important;height:166px!important}
}

@media(max-width:800px){
  #campaigns.na-home-campaigns{padding-top:22px!important}
  #campaigns .na-home-campaigns__intro{grid-template-columns:1fr!important;gap:16px!important;padding-bottom:13px!important}
  #campaigns .na-home-campaigns__copy{max-width:690px!important}
  #campaigns .na-home-campaigns__copy h2{max-width:660px!important}
  #campaigns .na-polaroid-stack{height:350px!important;min-height:350px!important;max-width:700px!important;margin-inline:auto!important}
  #campaigns .na-polaroid--team-a{left:0!important;top:48px!important;width:60%!important;height:260px!important}
  #campaigns .na-polaroid--team-b{right:0!important;top:6px!important;width:46%!important;height:215px!important}
  #campaigns .na-polaroid--koumi{left:43%!important;bottom:4px!important;width:25%!important;height:166px!important}
  #campaigns .na-polaroid--mohamed{right:4%!important;bottom:0!important;width:24%!important;height:160px!important}
  .na-campaign-viewer__shell{grid-template-columns:68px minmax(0,1fr) 68px;padding:20px;gap:10px}
  .na-campaign-viewer__stage{padding:18px 12px}
  .na-campaign-viewer__caption{gap:14px}
}

@media(max-width:600px){
  #campaigns .na-home-campaigns__actions{display:grid!important;grid-template-columns:1fr!important}
  #campaigns .na-home-campaigns__actions a{width:100%!important}
  #campaigns .na-polaroid-area{width:calc(100% + 16px)!important;overflow:hidden!important}
  #campaigns .na-polaroid-stack{
    display:flex!important;align-items:flex-start!important;gap:12px!important;
    width:100%!important;max-width:none!important;height:265px!important;min-height:265px!important;
    margin:0!important;padding:12px 16px 22px 0!important;overflow-x:auto!important;overflow-y:visible!important;
    scroll-snap-type:x proximity!important;scrollbar-width:none!important;isolation:auto!important;
  }
  #campaigns .na-polaroid-stack::-webkit-scrollbar{display:none!important}
  #campaigns .na-polaroid{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    flex:0 0 min(52vw,250px)!important;width:auto!important;height:205px!important;aspect-ratio:auto!important;
    scroll-snap-align:start!important;transform:rotate(var(--na-photo-r))!important;
  }
  #campaigns .na-polaroid--team-a{flex-basis:min(78vw,430px)!important;height:235px!important;margin-left:1px!important}
  #campaigns .na-polaroid--team-b{flex-basis:min(61vw,320px)!important;height:218px!important;margin-top:8px!important}
  #campaigns .na-polaroid--koumi{margin-top:17px!important}
  #campaigns .na-polaroid--mohamed{margin-top:10px!important;margin-right:10px!important}
  #campaigns .na-polaroid figcaption small{display:none!important}
  #campaigns .na-polaroid-reference{padding-right:16px!important}
  .na-campaign-viewer__shell{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) auto auto;padding:18px 14px 16px;gap:10px}
  .na-campaign-viewer__stage{grid-column:1/-1;grid-row:1;padding:54px 0 8px}
  .na-campaign-viewer__stage img{max-height:calc(100dvh - 260px);border-width:6px;box-shadow:7px 8px 0 #043b25}
  .na-campaign-viewer__nav{grid-row:2;min-height:48px;padding:8px}
  .na-campaign-viewer__nav--prev{grid-column:1}.na-campaign-viewer__nav--next{grid-column:2}
  .na-campaign-viewer__nav b{display:inline;margin:0 7px 0 0;font-size:18px}
  .na-campaign-viewer__caption{grid-column:1/-1;grid-row:3;grid-template-columns:1fr;gap:9px;padding-top:9px}
  .na-campaign-viewer__caption b{font-size:30px}
  .na-campaign-viewer__caption a{width:100%;justify-content:center}
  .na-campaign-viewer__close{right:14px;top:14px;width:39px;height:39px;font-size:20px}
}

@media(prefers-reduced-motion:reduce){
  #campaigns .na-polaroid,.na-campaign-viewer__nav{transition:none!important}
}

/* Wave 4.1 — promote the existing race-day gallery reference, no duplicate CTA. */
#campaigns .na-polaroid-reference{align-items:center!important;min-height:48px!important;margin-top:8px!important;padding-top:8px!important}
#campaigns .na-polaroid-reference a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:40px!important;padding:0 14px!important;border:2px solid var(--na-green)!important;border-bottom:2px solid var(--na-green)!important;background:var(--na-green)!important;color:var(--na-paper)!important;box-shadow:5px 5px 0 var(--na-red)!important;font:900 8px/1 Archivo,Arial,sans-serif!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-decoration:none!important}
@media(hover:hover){#campaigns .na-polaroid-reference a:hover{transform:translate(-2px,-2px)!important;opacity:1!important;box-shadow:8px 8px 0 var(--na-red)!important}}

/* Campaign calligraphy: deliberately inside the canvas, visible in cream breathing space, never hanging off an edge. */
#campaigns.na-home-campaigns{position:relative!important;isolation:isolate!important}
#campaigns .na-home-campaigns__wrap{position:relative!important;z-index:1!important}
#campaigns .na-campaign-calligraphy-layer{position:absolute!important;inset:0!important;z-index:0!important;overflow:hidden!important;pointer-events:none!important}
#campaigns .na-campaign-calligraphy-layer img{position:absolute!important;display:block!important;width:auto!important;max-width:none!important;height:auto!important;object-fit:contain!important;mix-blend-mode:multiply!important;filter:saturate(.98) contrast(1.18)!important;opacity:.32!important}
#campaigns .na-calligraphy--one{width:250px!important;left:27%!important;top:96px!important;transform:rotate(-7deg)!important}
#campaigns .na-calligraphy--two{width:270px!important;left:67%!important;top:520px!important;transform:rotate(8deg)!important;opacity:.29!important}
#campaigns .na-calligraphy--three{width:235px!important;left:18%!important;top:36%!important;transform:rotate(4deg)!important;opacity:.28!important}
#campaigns .na-calligraphy--four{width:285px!important;left:58%!important;top:61%!important;transform:rotate(-8deg)!important;opacity:.30!important}
#campaigns .na-calligraphy--five{width:245px!important;left:37%!important;top:82%!important;transform:rotate(5deg)!important;opacity:.30!important}

/* Small race-help line beneath the Campaigns CTAs. */
#campaigns .na-campaign-race-help{display:inline-block;margin-top:12px;padding-bottom:2px;border-bottom:1px solid currentColor;color:var(--na-green,#043b25)!important;font:900 7.5px/1.25 Archivo,Arial,sans-serif;letter-spacing:.075em;text-transform:uppercase;text-decoration:none;transition:color .15s ease,transform .15s ease}
@media(hover:hover){#campaigns .na-campaign-race-help:hover{color:var(--na-red,#b94438)!important;transform:translateY(-1px)}}

/* Non-Ultra race cards: no diagonal ribbon. Use the reclaimed top space for a useful partnership line and more legible details. */
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-partnership-note{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0 0 8px!important;
  padding:0 0 5px!important;
  border-bottom:1px solid currentColor!important;
  color:inherit!important;
  font:900 clamp(7px,.5vw,8.5px)/1.2 Archivo,Arial,sans-serif!important;
  letter-spacing:.085em!important;
  text-transform:uppercase!important;
  opacity:.78!important;
  white-space:normal!important;
}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__top{
  margin-top:0!important;
  padding-right:0!important;
  font-size:clamp(7.4px,.53vw,8.6px)!important;
  opacity:.82!important;
}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body{margin-top:14px!important}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body>strong{
  font-size:clamp(8.8px,.58vw,10px)!important;
  line-height:1.35!important;
}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body>p:last-of-type{
  margin-top:9px!important;
  font-size:clamp(11.5px,.76vw,13px)!important;
  line-height:1.42!important;
  -webkit-line-clamp:3!important;
}
  #campaigns .na-campaign-calligraphy-layer img{opacity:.25!important}
  #campaigns .na-campaign-calligraphy-layer img{opacity:.18!important;max-width:42vw!important}
  #campaigns .na-calligraphy--one{left:46%!important;top:120px!important}
  #campaigns .na-calligraphy--two{left:30%!important;top:34%!important}
  #campaigns .na-calligraphy--three{left:50%!important;top:55%!important}
  #campaigns .na-calligraphy--four{left:18%!important;top:72%!important}
  #campaigns .na-calligraphy--five{left:44%!important;top:88%!important}
  #campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-partnership-note{font-size:7.2px!important}
@media(prefers-reduced-motion:reduce){#campaigns .na-campaign-race-help{transition:none!important}}

#campaigns .na-races-section{width:100%;max-width:none;margin:0;padding:17px 0 0!important;border-top:1.5px solid rgba(4,59,37,.27);box-sizing:border-box;scroll-margin-top:84px}
#campaigns .na-races-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:13px}
#campaigns .na-races-heading p{margin:0 0 5px!important;color:rgba(4,59,37,.65)!important;font:900 7.8px/1.2 Archivo,Arial,sans-serif!important;letter-spacing:.15em!important;text-transform:uppercase!important}
#campaigns .na-races-heading h2{margin:0;color:var(--na-green);font:italic 400 clamp(45px,4.15vw,66px)/.96 Anton,Impact,sans-serif;text-transform:uppercase}
#campaigns .na-partner-key{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
#campaigns .na-partner-key span{padding:5px 8px;border:1px solid var(--na-green);background:var(--na-paper);font:900 6.7px/1.1 Archivo,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
#campaigns .na-partner-key [data-key="abp"]{background:var(--na-red);border-color:var(--na-red);color:var(--na-paper)}#campaigns .na-partner-key [data-key="ultra"]{background:#47533c;border-color:#47533c;color:var(--na-paper)}

#campaigns .na-race-filters{display:flex;align-items:end;gap:8px;width:100%;margin:0 0 4px;padding:0 0 7px;overflow-x:auto;scrollbar-width:none}#campaigns .na-race-filters::-webkit-scrollbar{display:none}
#campaigns .na-race-filters label{display:grid;gap:4px;min-width:164px;flex:0 0 auto}#campaigns .na-race-filters label span{font:900 6.8px/1 Archivo,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}
#campaigns .na-race-filters select{height:35px;padding:0 34px 0 10px;border:1.5px solid var(--na-green);border-radius:0;background:var(--na-paper);color:var(--na-green);font:900 8.5px/1 Archivo,Arial,sans-serif;text-transform:uppercase}
#campaigns .na-race-filters button{height:35px;padding:0 11px;border:1.5px solid var(--na-green);background:transparent;color:var(--na-green);font:900 7.5px/1 Archivo,Arial,sans-serif;text-transform:uppercase;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease}@media(hover:hover){#campaigns .na-race-filters button:hover{transform:translate(-1px,-1px);background:var(--na-green);color:var(--na-paper);box-shadow:3px 3px 0 var(--na-red)}}
#campaigns .na-race-results{min-height:18px;margin:0 0 9px;font:900 7.6px/1.2 Archivo,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}

#campaigns .na-race-grid{display:grid;width:100%;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;align-items:start;margin:0;padding:0;box-sizing:border-box}
#campaigns .na-race-widget,#campaigns .na-view-more-widget{width:100%;min-width:0;min-height:0;aspect-ratio:1.08/1;box-sizing:border-box}
#campaigns .na-race-widget{position:relative;display:flex;flex-direction:column;overflow:hidden;padding:17px;border:3px solid var(--na-green);background:var(--na-paper);color:var(--na-green);box-shadow:7px 7px 0 var(--na-green);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
#campaigns .na-race-widget[hidden]{display:none!important}#campaigns .na-race-widget>*:not(.na-race-widget__mark){position:relative;z-index:2}
@media(hover:hover){#campaigns .na-race-widget:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 var(--na-green);filter:brightness(1.015)}}
#campaigns .na-race-widget__mark{position:absolute;right:-15px;bottom:21px;width:54%;opacity:.1;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
#campaigns .na-race-widget--southampton{background:var(--na-red);color:#fff0c8}#campaigns .na-race-widget--manchester-marathon{background:#096344;color:#fff0ce}#campaigns .na-race-widget--hackney-half{background:var(--na-gold);color:#082d1e}#campaigns .na-race-widget--edinburgh-marathon{background:linear-gradient(145deg,#174c60,#26768a);color:#fff0ce}#campaigns .na-race-widget--sheffield{background:#fff0ce;color:#083d27}#campaigns .na-race-widget--isle-wight{background:linear-gradient(145deg,#263c31,#4d6250 70%,#385845);color:#fff0ce}#campaigns .na-race-widget--ultra:not(.na-race-widget--isle-wight){background:#47533c;color:#fff0ce}
#campaigns .na-race-widget--ultra:after{content:"";position:absolute;inset:0;background:repeating-radial-gradient(ellipse at 82% 90%,transparent 0 14px,rgba(255,244,212,.08) 15px 16px);pointer-events:none}
#campaigns .na-race-widget--paris-marathon{background:linear-gradient(145deg,#7b3348,#a84d55);color:#fff0ce}#campaigns .na-race-widget--amsterdam-marathon{background:linear-gradient(145deg,#1f6178,#2e8294);color:#fff0ce}
#campaigns .na-race-widget--paris-marathon:before,#campaigns .na-race-widget--amsterdam-marathon:before{content:"";position:absolute;right:-8%;bottom:7%;width:55%;height:55%;opacity:.11;background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none}
#campaigns .na-race-widget--paris-marathon:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%23fff0ce' stroke-width='3'%3E%3Cpath d='M20 96h80M37 96l23-72 23 72M45 70h30M50 54h20M55 38h10M30 96c2-14 8-23 18-27M90 96c-2-14-8-23-18-27'/%3E%3C/svg%3E")}
#campaigns .na-race-widget--amsterdam-marathon:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%23fff0ce' stroke-width='3'%3E%3Cpath d='M12 88h96M18 88V54h20v34M40 88V42h22v46M64 88V50h18v38M84 88V58h18v30M18 54l10-10 10 10M40 42l11-12 11 12M64 50l9-9 9 9M84 58l9-8 9 8M14 98c18-7 34-7 48 0s28 7 44 0'/%3E%3C/svg%3E")}

/* Ultra partner sash remains part of the final race-card DOM. */
#campaigns .na-ultra-ribbon{position:absolute!important;z-index:6!important;right:-38px!important;top:74px!important;width:185px!important;padding:7px 10px 6px!important;transform:rotate(35deg)!important;display:grid!important;justify-items:center!important;background:var(--na-ultra)!important;color:#153629!important;border:2px solid #153629!important;box-shadow:4px 4px 0 rgba(21,54,41,.55)!important;font-family:Archivo,Arial,sans-serif!important;line-height:1!important;pointer-events:none!important}
#campaigns .na-ultra-ribbon span{font-size:7px!important;font-weight:900!important;letter-spacing:.2em!important}#campaigns .na-ultra-ribbon b{font-size:12px!important;letter-spacing:.08em!important}#campaigns .na-ultra-ribbon i{margin-top:3px!important;font-size:5.5px!important;font-style:normal!important;font-weight:900!important;letter-spacing:.13em!important}

#campaigns .na-race-widget__top{display:flex;justify-content:space-between;gap:10px;margin-top:37px;padding-right:5px;font:900 7px/1.2 Archivo,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;opacity:.72}
#campaigns .na-race-widget--ultra .na-race-widget__top{margin-top:7px;padding-right:74px}
#campaigns .na-race-widget__body{margin-top:18px}#campaigns .na-race-widget--ultra .na-race-widget__body{margin-top:24px}
#campaigns .na-race-widget__body>p:first-child{margin:0 0 5px!important;color:inherit!important;font:900 7px/1.3 Archivo,Arial,sans-serif!important;letter-spacing:.11em!important;text-transform:uppercase;opacity:.72}
#campaigns .na-race-widget h3{max-width:96%;margin:0;font:italic 400 clamp(35px,2.65vw,49px)/.97 Anton,Impact,sans-serif;letter-spacing:-.015em;text-transform:uppercase;text-wrap:balance}
#campaigns .na-race-widget__body>strong{display:block;margin-top:7px;font:900 8.5px/1.3 Archivo,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
#campaigns .na-race-widget__body>p:last-of-type{max-width:94%;margin:9px 0 0!important;color:inherit!important;font:720 11px/1.4 Archivo,Arial,sans-serif!important;opacity:.86;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
#campaigns .na-race-widget__rfc-note{display:inline-flex;margin-top:7px;padding-bottom:2px;border-bottom:1px solid currentColor;font:900 6px/1 Archivo,Arial,sans-serif;font-style:normal;letter-spacing:.09em;text-transform:uppercase;opacity:.66}
#campaigns .na-race-widget__action{min-height:35px;margin-top:auto;padding-top:9px;border-top:1px solid currentColor;display:flex;align-items:center;justify-content:space-between;color:inherit;font:900 7.3px/1 Archivo,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;transition:transform .15s ease,opacity .15s ease}#campaigns .na-race-widget__action b{font-size:14px}@media(hover:hover){#campaigns .na-race-widget__action:hover{transform:translateY(-2px);opacity:.72}}

#campaigns .na-view-more-widget{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;overflow:hidden;padding:17px;border:3px solid var(--na-green);background:radial-gradient(circle at 88% 18%,transparent 0 27px,rgba(255,244,212,.12) 28px 29px,transparent 30px 46px,rgba(255,244,212,.09) 47px 48px,transparent 49px 66px,rgba(255,244,212,.07) 67px 68px,transparent 69px),linear-gradient(145deg,#043b25,#075437 72%,#0a6645);color:var(--na-paper);box-shadow:7px 7px 0 var(--na-red);cursor:pointer;text-align:left;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
#campaigns .na-view-more-widget[hidden]{display:none!important}#campaigns .na-view-more-widget:before{content:"55";position:absolute;right:8px;top:25px;font:italic 400 clamp(76px,6vw,118px)/.8 Anton,Impact,sans-serif;opacity:.09;transform:rotate(-6deg);pointer-events:none}#campaigns .na-view-more-widget:after{content:"OPEN DIRECTORY ↘";position:absolute;top:14px;left:14px;padding:5px 8px;background:var(--na-red);color:var(--na-paper);border:1.5px solid var(--na-paper);box-shadow:3px 3px 0 rgba(255,244,212,.18);font:900 6.5px/1 Archivo,Arial,sans-serif;letter-spacing:.11em;text-transform:uppercase;pointer-events:none}
#campaigns .na-view-more-widget small{margin-top:auto;font:900 6.9px/1.2 Archivo,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;opacity:.68}#campaigns .na-view-more-widget strong{margin-top:7px;font:italic 400 clamp(34px,2.5vw,45px)/.95 Anton,Impact,sans-serif;text-transform:uppercase}#campaigns .na-view-more-widget span{width:100%;margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,244,212,.45);font:900 7.6px/1.2 Archivo,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
@media(hover:hover){#campaigns .na-view-more-widget:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 var(--na-red);filter:brightness(1.05)}}


#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon {
  top: 20px !important;
  right: -57px !important;
  width: 220px !important;
  min-height: 43px !important;
  padding: 6px 12px 7px !important;
  transform: rotate(34deg) !important;
  border: 2px solid #153629 !important;
  background: #ff7896 !important;
  color: #153629 !important;
  box-shadow: 4px 5px 0 rgba(21,54,41,.48) !important;
  gap: 1px !important;
  overflow: hidden !important;
}
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon::before,
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  height: 1px;
  background: rgba(21,54,41,.38);
}
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon::before { top: 4px; }
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon::after { bottom: 4px; }
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon span {
  font-size: 6.8px !important;
  letter-spacing: .22em !important;
}
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon b {
  font-size: 12.4px !important;
  letter-spacing: .075em !important;
}
#campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon i {
  margin-top: 2px !important;
  font-size: 5.4px !important;
  letter-spacing: .14em !important;
}
#campaigns.na-home-campaigns .na-race-widget .na-race-widget__top {
  margin-top: 45px !important;
  padding-right: 0 !important;
}
#campaigns.na-home-campaigns .na-race-widget.na-race-widget--ultra .na-race-widget__top {
  margin-top: 50px !important;
  padding-right: 0 !important;
}
#campaigns.na-home-campaigns .na-race-widget.na-race-widget--ultra .na-race-widget__body {
  margin-top: 16px !important;
}
@media(max-width:650px){  #campaigns.na-home-campaigns .na-race-widget .na-ultra-ribbon {    top: 18px !important;    right: -63px !important;    width: 228px !important;  }}

#campaigns .na-home-campaigns__actions .na-campaign-map-trigger{min-height:39px;padding:0 15px;border:2px solid #043b25;border-radius:0;background:transparent;color:#043b25;font:900 8.4px/1 Archivo,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;box-shadow:none}
      #campaigns .na-home-campaigns__actions .na-campaign-map-trigger:hover,#campaigns .na-home-campaigns__actions .na-campaign-map-trigger:focus-visible{background:#043b25;color:#fff4d4;outline:2px solid #cf352f;outline-offset:2px}
      body.na-campaign-map-open{overflow:hidden!important}
      .na-campaign-map-dialog{width:min(1540px,calc(100vw - 32px));max-width:none;height:min(940px,calc(100dvh - 28px));max-height:none;margin:auto;padding:0;border:0;border-radius:0;background:#f9ecc7;color:#043b25;overflow:hidden;box-shadow:12px 14px 0 #cf352f}
      .na-campaign-map-dialog::backdrop{background:rgba(2,23,13,.78)}
      .na-campaign-map-dialog__shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100%;border:3px solid #043b25;background:#f9ecc7}
      .na-campaign-map-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:70px;padding:11px 14px 10px 18px;border-bottom:3px solid #043b25;background:#f9ecc7}
      .na-campaign-map-dialog__header p{margin:0 0 4px;color:#cf352f;font:900 7px/1 Archivo,Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
      .na-campaign-map-dialog__header h2{margin:0;font:400 clamp(29px,2.6vw,44px)/.9 Anton,Impact,sans-serif;letter-spacing:-.01em;text-transform:uppercase}
      .na-campaign-map-dialog__header button{flex:0 0 auto;min-height:39px;padding:0 12px;border:2px solid #043b25;border-radius:0;background:#cf352f;color:#fff4d4;font:900 7px/1 Archivo,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
      .na-campaign-map-dialog__header button:hover,.na-campaign-map-dialog__header button:focus-visible{background:#043b25;outline:2px solid #dfb730;outline-offset:2px}
      .na-campaign-map-dialog__atlas{position:relative;min-width:0;min-height:0;padding:14px;background:#02170d;overflow:auto;overscroll-behavior:contain}
      .na-campaign-map-dialog__atlas #uk-campaign-map{min-height:100%}
      .na-campaign-map-dialog__status{position:absolute;left:50%;top:50%;margin:0;padding:8px 10px;border:1px solid rgba(249,236,199,.42);background:#02170d;color:#f9ecc7;transform:translate(-50%,-50%);font:900 7px/1 Archivo,Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;pointer-events:none}
      .na-campaign-map-dialog__status[hidden]{display:none}
      .na-campaign-map-dialog__note{margin:0;min-height:34px;padding:10px 17px;border-top:3px solid #043b25;background:#f9ecc7;color:rgba(4,59,37,.7);font:800 6.5px/1.35 Archivo,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
      @media(max-width:800px){
        #campaigns .na-home-campaigns__actions .na-campaign-map-trigger{width:100%}
        .na-campaign-map-dialog{width:100vw;height:100dvh;margin:0;box-shadow:none}
        .na-campaign-map-dialog__shell{border-width:0}
        .na-campaign-map-dialog__header{position:sticky;top:0;z-index:30;min-height:62px;padding:9px 10px 8px 13px;border-bottom-width:2px}
        .na-campaign-map-dialog__header h2{font-size:29px}
        .na-campaign-map-dialog__header button{min-height:38px;padding:0 10px}
        .na-campaign-map-dialog__atlas{padding:8px;overflow:auto}
        .na-campaign-map-dialog__note{border-top-width:2px;padding:9px 11px}
        .na-campaign-map-dialog #uk-campaign-map .na-atlas{grid-template-columns:1fr!important}
        .na-campaign-map-dialog #uk-campaign-map .na-atlas__viewport{min-height:480px}
        .na-campaign-map-dialog #uk-campaign-map .na-atlas__panel{min-height:0}
      }
      @media(max-width:480px){.na-campaign-map-dialog #uk-campaign-map .na-atlas__viewport{min-height:420px}.na-campaign-map-dialog__header p{font-size:6px}.na-campaign-map-dialog__header h2{font-size:25px}}
      @media(prefers-reduced-motion:reduce){.na-campaign-map-dialog *{scroll-behavior:auto!important}}

#campaigns a:focus-visible,#campaigns button:focus-visible,#campaigns select:focus-visible{outline:2px solid #d9342b;outline-offset:3px}
@media(max-width:1380px){#campaigns .na-race-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#campaigns .na-race-widget,#campaigns .na-view-more-widget{aspect-ratio:1.08/1}}
@media(max-width:1020px){#campaigns .na-races-heading{align-items:flex-start;flex-direction:column}#campaigns .na-partner-key{justify-content:flex-start}#campaigns .na-race-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#campaigns.na-home-campaigns{padding-bottom:48px!important}#campaigns .na-home-campaigns__copy h2{font-size:clamp(52px,15vw,72px)}#campaigns .na-home-campaigns__actions{display:grid}#campaigns .na-home-campaigns__actions a{width:100%;box-sizing:border-box}#campaigns .na-race-grid{grid-template-columns:1fr;gap:14px}#campaigns .na-race-widget,#campaigns .na-view-more-widget{aspect-ratio:auto;min-height:345px}#campaigns .na-partner-key{display:none}}
@media(prefers-reduced-motion:reduce){#campaigns .na-race-widget,#campaigns .na-view-more-widget,#campaigns .na-home-campaigns__actions a{transition:none!important;transform:none!important}}


/* Batch 4B traced production survivors */
#campaigns .na-home-campaigns__copy>p:not(.na-home-campaigns__kicker){max-width:535px!important;margin-top:10px!important;font:750 clamp(15px,1.06vw,18px)/1.43 Archivo,Arial,sans-serif!important}
#campaigns .na-home-campaigns__actions{margin-top:14px!important;gap:8px!important}
#campaigns.na-home-campaigns .na-polaroid-stack{margin-left:auto!important}
#campaigns .na-polaroid{box-sizing:border-box!important}
#campaigns .na-polaroid:before{content:""!important;position:absolute!important;left:50%!important;z-index:4!important;transform:translateX(-50%) rotate(-2deg)!important;background:rgba(226,207,151,.8)!important;box-shadow:0 1px 0 rgba(4,59,37,.12)!important}
#campaigns .na-polaroid img{display:block!important}
#campaigns .na-polaroid figcaption{position:absolute!important;justify-content:space-between!important;align-items:flex-end!important;gap:8px!important;font-family:Archivo,Arial,sans-serif!important}

#campaigns.na-home-campaigns{position:relative!important;isolation:isolate!important}
#campaigns .na-home-campaigns__wrap{position:relative!important;z-index:1!important}
#campaigns .na-campaign-calligraphy-layer{position:absolute!important;inset:0!important;z-index:0!important;overflow:hidden!important;pointer-events:none!important}
#campaigns .na-campaign-calligraphy-layer img{position:absolute!important;display:block!important;width:auto!important;max-width:none!important;height:auto!important;object-fit:contain!important;mix-blend-mode:multiply!important;filter:saturate(.98) contrast(1.18)!important;opacity:.32!important}
#campaigns .na-calligraphy--one{width:250px!important;left:27%!important;top:96px!important;transform:rotate(-7deg)!important}
#campaigns .na-calligraphy--two{width:270px!important;left:67%!important;top:520px!important;transform:rotate(8deg)!important;opacity:.29!important}
#campaigns .na-calligraphy--three{width:235px!important;left:18%!important;top:36%!important;transform:rotate(4deg)!important;opacity:.28!important}
#campaigns .na-calligraphy--four{width:285px!important;left:58%!important;top:61%!important;transform:rotate(-8deg)!important;opacity:.30!important}
#campaigns .na-calligraphy--five{width:245px!important;left:37%!important;top:82%!important;transform:rotate(5deg)!important;opacity:.30!important}

#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-partnership-note{display:block!important;width:max-content!important;max-width:100%!important;margin:0 0 8px!important;padding:0 0 5px!important;border-bottom:1px solid currentColor!important;color:inherit!important;font:900 clamp(7px,.5vw,8.5px)/1.2 Archivo,Arial,sans-serif!important;letter-spacing:.085em!important;text-transform:uppercase!important;opacity:.78!important;white-space:normal!important}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__top{margin-top:0!important;padding-right:0!important;font-size:clamp(7.4px,.53vw,8.6px)!important;opacity:.82!important}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body{margin-top:14px!important}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body>strong{font-size:clamp(8.8px,.58vw,10px)!important;line-height:1.35!important}
#campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-widget__body>p:last-of-type{margin-top:9px!important;font-size:clamp(11.5px,.76vw,13px)!important;line-height:1.42!important;-webkit-line-clamp:3!important}

@media(max-width:1180px){#campaigns .na-campaign-calligraphy-layer img{opacity:.25!important}}
@media(max-width:800px){
  #campaigns .na-campaign-calligraphy-layer img{opacity:.18!important;max-width:42vw!important}
  #campaigns .na-calligraphy--one{left:46%!important;top:120px!important}
  #campaigns .na-calligraphy--two{left:30%!important;top:34%!important}
  #campaigns .na-calligraphy--three{left:50%!important;top:55%!important}
  #campaigns .na-calligraphy--four{left:18%!important;top:72%!important}
  #campaigns .na-calligraphy--five{left:44%!important;top:88%!important}
  #campaigns .na-race-widget:not(.na-race-widget--ultra) .na-race-partnership-note{font-size:7.2px!important}
}
