body.ir-site {
  --ir-forest: #123a34;
  --ir-ink: #16362f;
  --ir-copy: #48635a;
  --ir-teal: #087b80;
  --ir-lime: #bfd653;
  --ir-coral: #dc5144;
  --ir-line: #d2e0d9;
  --ir-surface: #f2f7f4;
}

body.ir-site .site-header.run-navigation {
  border-bottom-color: #d2e0d9 !important;
  box-shadow: 0 8px 26px rgba(18, 58, 52, .08) !important;
}

body.ir-site .run-navigation .nav-group > button,
body.ir-site .run-navigation .nav-result {
  border-radius: 4px !important;
  transition: background-color .18s ease, color .18s ease, box-shadow .18s ease;
}

body.ir-site .run-navigation .nav-group > button:hover,
body.ir-site .run-navigation .nav-group > button[aria-expanded="true"],
body.ir-site .run-navigation .nav-result:hover {
  background: #eef6f2 !important;
  color: #087b80 !important;
}

body.ir-site .run-navigation .header-login,
body.ir-site .run-navigation .header-register {
  min-height: 46px;
  border-radius: 4px !important;
}

body.ir-site .run-navigation .header-register,
body.ir-site main#mainContent .button-primary {
  border-color: #d84e42 !important;
  background: #d84e42 !important;
  box-shadow: 0 5px 14px rgba(216, 78, 66, .16);
}

body.ir-site .run-navigation .header-register:hover,
body.ir-site main#mainContent .button-primary:hover,
body.ir-site main#mainContent .button-primary:focus-visible {
  border-color: #b63c33 !important;
  background: #b63c33 !important;
  box-shadow: 0 8px 18px rgba(182, 60, 51, .22);
}

body.ir-site main#mainContent .button {
  min-height: 46px;
  border-radius: 4px;
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

body.ir-site main#mainContent .button:hover { transform: translateY(-2px); }

body.ir-site .site-footer {
  border-top: 4px solid #dc5144 !important;
  background: #123a34 !important;
  color: #f4f7f4 !important;
}

body.ir-site .site-footer .footer-main {
  display: grid;
  grid-template-columns: minmax(150px, .85fr) minmax(175px, 1fr) minmax(225px, 1.25fr) minmax(170px, 1fr) auto;
  align-items: center;
  gap: 22px;
  padding-bottom: 34px;
  color: #f4f7f4 !important;
}

body.ir-site .site-footer .footer-brand-block > p,
body.ir-site .site-footer .footer-brand-block > p span,
body.ir-site .site-footer .footer-supported-by > span,
body.ir-site .site-footer .footer-organiser > span {
  color: #e0ece6 !important;
}

body.ir-site .site-footer .footer-brand-block > p span { opacity: .76; }

body.ir-site .site-footer .footer-supported-by {
  width: min(220px, 100%);
  gap: 9px;
}

body.ir-site .site-footer .footer-support-logo {
  width: 220px;
  height: 84px;
}

body.ir-site .site-footer .footer-support-logo img {
  top: -62px;
  width: 220px;
  height: 220px;
}

body.ir-site .site-footer .footer-organiser {
  display: grid;
  min-width: 0;
  gap: 9px;
}

body.ir-site .site-footer .footer-organiser > span,
body.ir-site .site-footer .footer-supported-by > span {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

body.ir-site .site-footer .footer-organiser-logo {
  width: min(270px, 100%);
  aspect-ratio: 2.65 / 1;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 5px;
  background: #050505;
}

body.ir-site .site-footer .footer-organiser-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
}

body.ir-site .site-footer .footer-links {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  gap: 10px 17px;
}

body.ir-site .site-footer :is(.footer-links a, .footer-phone) {
  color: #e4eee9 !important;
  font-size: 12px;
}

body.ir-site .site-footer .footer-links a:hover { color: #bfd653 !important; }

body.ir-site .site-footer .footer-phone {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-self: end;
  border: 1px solid rgba(226, 239, 232, .34);
  border-radius: 4px;
  padding: 0 12px;
  color: #e8d275 !important;
  white-space: nowrap;
}

body.ir-site .site-footer .footer-bottom {
  border-top-color: rgba(226, 239, 232, .18) !important;
  color: #bfcec6 !important;
}

body.ir-site .site-footer .footer-bottom a { color: #e8d275 !important; }

@media (max-width: 1100px) {
  body.ir-site .site-footer .footer-main {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
  }

  body.ir-site .site-footer .footer-phone { justify-self: start; }
}

@media (max-width: 720px) {
  body.ir-site .site-footer .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 18px;
  }

  body.ir-site .site-footer .footer-organiser-logo { width: min(270px, 100%); }
}

@media (max-width: 460px) {
  body.ir-site .site-footer .footer-main { grid-template-columns: minmax(0, 1fr); }
  body.ir-site .site-footer .footer-bottom { flex-wrap: wrap; gap: 10px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  body.ir-site .run-navigation .nav-group > button,
  body.ir-site .run-navigation .nav-result,
  body.ir-site main#mainContent .button { transition: none; }
  body.ir-site main#mainContent .button:hover { transform: none; }
}

/* One consistent type system and a brighter, calmer event palette. */
body.ir-site {
  --ir-forest: #143a35;
  --ir-ink: #192f2d;
  --ir-copy: #4b625e;
  --ir-teal: #087d89;
  --ir-lime: #b9d34e;
  --ir-coral: #e45b4e;
  --ir-line: #d5e1dd;
  --ir-surface: #f3f7f6;
  background: #f5f8f7 !important;
  color: var(--ir-ink) !important;
  font-family: var(--font) !important;
}

body.ir-site :where(*) { font-family: var(--font) !important; }
body.ir-site :is(h1, h2, h3, h4, h5, h6, .brand-event-wordmark b, .hero-event-brand b) {
  font-family: var(--display-font) !important;
}

body.ir-site main#mainContent { background: #f5f8f7 !important; }
body.ir-site main#mainContent > #story { background: #ffffff !important; }
body.ir-site main#mainContent > #sponsors { background: #eaf4f2 !important; }
body.ir-site main#mainContent > #contests { background: #fbf5f2 !important; }
body.ir-site main#mainContent > #runner-hub { background: #ffffff !important; }
body.ir-site main#mainContent > #schedule { background: #f0f5ed !important; }
body.ir-site main#mainContent > #updates { background: #edf5f7 !important; }
body.ir-site main#mainContent > #event-calendar { background: #f5f8f7 !important; }
body.ir-site main#mainContent > #register { background: #f3f7f6 !important; }
body.ir-site main#mainContent > #faq { background: #ffffff !important; }
body.ir-site main#mainContent > section:not(.hero) { border-color: var(--ir-line) !important; }

/* Route-inspired segmented navigation with a restrained moving accent. */
body.ir-site .site-header.run-navigation {
  grid-template-columns: 210px minmax(0, 1fr) auto;
  min-height: 82px;
  border-bottom: 1px solid #d6e1dd !important;
  background: rgba(255, 255, 255, .96) !important;
  box-shadow: 0 8px 24px rgba(20, 58, 53, .08) !important;
}

body.ir-site .run-navigation .brand-event-wordmark b { color: var(--ir-forest) !important; }
body.ir-site .run-navigation .brand-event-wordmark small { color: var(--ir-teal) !important; }

body.ir-site .run-navigation .main-nav {
  gap: 2px !important;
  padding: 4px !important;
  border: 1px solid #dce7e3 !important;
  border-radius: 8px !important;
  background: #f2f6f5 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9) !important;
}

body.ir-site .run-navigation .nav-group > button,
body.ir-site .run-navigation .nav-result {
  min-height: 42px;
  border: 0 !important;
  border-radius: 5px !important;
  background: transparent !important;
  color: #294541 !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  transition: color .18s ease, background-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.ir-site .run-navigation .nav-group > button:hover,
body.ir-site .run-navigation .nav-group > button[aria-expanded="true"],
body.ir-site .run-navigation .nav-result:hover {
  background: #ffffff !important;
  box-shadow: inset 0 -2px 0 var(--ir-coral), 0 2px 8px rgba(20, 58, 53, .07) !important;
  color: var(--ir-teal) !important;
  transform: translateY(-1px);
}

body.ir-site .run-navigation .nav-dropdown,
body.ir-site .run-navigation .nav-dropdown-right,
body.ir-site .run-navigation .account-menu {
  border: 1px solid #d7e3df !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 38px rgba(20, 58, 53, .16) !important;
}

body.ir-site .run-navigation .nav-dropdown > small { color: var(--ir-teal) !important; }
body.ir-site .run-navigation .nav-dropdown > a:hover,
body.ir-site .run-navigation .nav-dropdown > a:focus-visible {
  border-radius: 4px;
  background: #edf5f4 !important;
  color: #075f68 !important;
}

body.ir-site .run-navigation .header-login,
body.ir-site .run-navigation .header-register,
body.ir-site .run-navigation .menu-toggle {
  min-height: 44px;
  border-radius: 5px !important;
  font-size: 12px;
  font-weight: 800;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

body.ir-site .run-navigation .header-login {
  border-color: #bfd2cc !important;
  background: #ffffff !important;
  color: #21433e !important;
}

body.ir-site .run-navigation .header-login:hover {
  border-color: var(--ir-teal) !important;
  background: #edf6f5 !important;
  transform: translateY(-1px);
}

body.ir-site .run-navigation .header-register,
body.ir-site main#mainContent .button-primary {
  border-color: var(--ir-coral) !important;
  background: var(--ir-coral) !important;
  color: #ffffff !important;
}

body.ir-site .run-navigation .header-register:hover,
body.ir-site main#mainContent .button-primary:hover {
  border-color: #c9473d !important;
  background: #c9473d !important;
  transform: translateY(-1px);
}

@media (min-width: 1101px) and (max-width: 1320px) {
  body.ir-site .site-header.run-navigation {
    grid-template-columns: 185px minmax(0, 1fr) auto;
    gap: 10px;
    padding-inline: 24px;
  }

  body.ir-site .run-navigation .nav-group > button,
  body.ir-site .run-navigation .nav-result { padding-inline: 7px; font-size: 11px !important; }
}

@media (max-width: 1100px) {
  body.ir-site .site-header.run-navigation { grid-template-columns: minmax(0, 1fr) auto; }
  body.ir-site .run-navigation .main-nav {
    gap: 3px !important;
    padding: 16px 20px 22px !important;
    border: 0 !important;
    border-top: 1px solid #e0e8e5 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 18px 30px rgba(20, 58, 53, .14) !important;
  }

  body.ir-site .run-navigation .nav-group > button,
  body.ir-site .run-navigation .nav-result {
    min-height: 50px;
    margin-bottom: 3px;
    padding-inline: 14px;
    border-bottom: 1px solid #e4ece8 !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: #24433e !important;
    font-size: 14px !important;
  }

  body.ir-site .run-navigation .nav-group > button:hover,
  body.ir-site .run-navigation .nav-group > button[aria-expanded="true"],
  body.ir-site .run-navigation .nav-result:hover {
    background: #edf5f4 !important;
    box-shadow: inset 3px 0 0 var(--ir-teal) !important;
    color: #075f68 !important;
    transform: none;
  }

  body.ir-site .run-navigation .nav-dropdown,
  body.ir-site .run-navigation .nav-dropdown-right {
    border: 0 !important;
    border-left: 2px solid #b7d4ce !important;
    border-radius: 0 !important;
    background: #f5f8f7 !important;
  }

  body.ir-site .run-navigation .menu-toggle {
    border-color: var(--ir-forest) !important;
    background: var(--ir-forest) !important;
    color: #ffffff !important;
  }

  body.ir-site .run-navigation .menu-toggle:hover,
  body.ir-site .run-navigation .menu-toggle[aria-expanded="true"] {
    border-color: #0e2e2a !important;
    background: #0e2e2a !important;
  }
}

@media (max-width: 540px) {
  body.ir-site .run-navigation .mobile-account-actions button {
    min-height: 46px;
    border-color: #bfd2cc !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    color: #21433e !important;
    font-weight: 800;
  }

  body.ir-site .run-navigation .mobile-account-actions button:last-child {
    border-color: var(--ir-coral) !important;
    background: var(--ir-coral) !important;
    color: #ffffff !important;
  }
}

/* Give both partner marks their own complete, legible logo panel. */
body.ir-site .site-footer {
  border-top: 4px solid var(--ir-coral) !important;
  background: #143a35 !important;
  color: #f5f8f7 !important;
}

body.ir-site .site-footer .footer-main {
  grid-template-columns: minmax(155px, .85fr) minmax(225px, 1fr) minmax(250px, 1.15fr) minmax(150px, .8fr) auto;
  align-items: center;
  gap: 22px;
}

body.ir-site .site-footer .brand-event-wordmark b { color: #ffffff !important; }
body.ir-site .site-footer .brand-event-wordmark small { color: #d6e991 !important; }

body.ir-site .site-footer .footer-supported-by,
body.ir-site .site-footer .footer-organiser {
  display: grid;
  width: min(260px, 100%);
  min-width: 0;
  gap: 10px;
}

body.ir-site .site-footer .footer-supported-by > span,
body.ir-site .site-footer .footer-organiser > span {
  color: #c8dad4 !important;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body.ir-site .site-footer .footer-support-logo {
  position: relative;
  display: block;
  width: 100%;
  height: 104px;
  overflow: hidden;
  border: 1px solid #dce7e3;
  border-radius: 5px;
  background: #ffffff;
}

body.ir-site .site-footer .footer-support-logo img {
  position: absolute;
  top: -66px;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
}

body.ir-site .site-footer .footer-organiser-logo {
  width: 100%;
  aspect-ratio: 2.2 / 1;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 5px;
  background: #050505;
}

body.ir-site .site-footer .footer-organiser-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
}

body.ir-site .site-footer :is(.footer-brand-block > p, .footer-brand-block > p span, .footer-links a, .footer-phone) {
  color: #e1ece8 !important;
}

body.ir-site .site-footer .footer-links a:hover,
body.ir-site .site-footer .footer-bottom a { color: #d6e991 !important; }

@media (max-width: 1100px) {
  body.ir-site .site-footer .footer-main { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  body.ir-site .site-footer .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 460px) {
  body.ir-site .site-footer .footer-main { grid-template-columns: minmax(0, 1fr); }
  body.ir-site .site-footer .footer-supported-by,
  body.ir-site .site-footer .footer-organiser { width: min(320px, 100%); }
  body.ir-site .site-footer .footer-support-logo { height: 118px; }
  body.ir-site .site-footer .footer-support-logo img { top: -74px; }
  body.ir-site .site-footer .footer-organiser-logo { aspect-ratio: 2.35 / 1; }
}

@media (prefers-reduced-motion: reduce) {
  body.ir-site .run-navigation :is(.nav-group > button, .nav-result, .header-login, .header-register, .menu-toggle) {
    transition: none;
  }
  body.ir-site .run-navigation :is(.nav-group > button:hover, .header-login:hover, .header-register:hover) { transform: none; }
}

/* Final visual system: photography carries the event; working sections stay quiet. */
body.ir-site {
  --ir-forest: #263537;
  --ir-ink: #263235;
  --ir-copy: #536368;
  --ir-teal: #087f83;
  --ir-lime: #a9bd65;
  --ir-coral: #d95549;
  --ir-line: #d8e2e1;
  --ir-surface: #f4f7f7;
  --nav-accent: #087f83;
  background: #fff !important;
  color: var(--ir-ink) !important;
}

body.ir-site main#mainContent { background: #fff !important; }
body.ir-site main#mainContent > section:not(.hero) { border-bottom-color: #e3e9e8 !important; }
body.ir-site main#mainContent > :is(#event-calendar, #contests, #schedule, #register) { background: #f4f7f7 !important; }
body.ir-site main#mainContent > :is(#race-journey, #story, #runner-hub, #updates, #faq) { background: #fff !important; }
body.ir-site main#mainContent > #sponsors { background: #edf3f2 !important; }
body.ir-site main#mainContent > section.photo-section:not(.closing) > .section-photo { display: none !important; }
body.ir-site main#mainContent > #event-calendar { background-image: none !important; }

body.ir-site main#mainContent h2,
body.ir-site main#mainContent .event-calendar-heading h2,
body.ir-site main#mainContent .journey-heading h2 {
  color: var(--ir-ink) !important;
  font-size: clamp(33px, 3.5vw, 49px) !important;
  line-height: 1.07 !important;
  font-weight: 700 !important;
}
body.ir-site main#mainContent :is(.section-label, .eyebrow) { color: var(--ir-teal) !important; }
body.ir-site main#mainContent :is(.section-heading > p, .event-calendar-heading > p, .journey-heading > p, .story-copy p) {
  color: var(--ir-copy) !important;
  text-shadow: none !important;
}
body.ir-site main#mainContent > section.photo-section:not(.closing) :is(h2, h3, h4, strong, summary, dt, dd, time, label) {
  color: var(--ir-ink) !important;
  text-shadow: none !important;
}
body.ir-site main#mainContent > section.photo-section:not(.closing) :is(p, li, figcaption, small, .section-copy) {
  color: var(--ir-copy) !important;
}

/* Navigation has readable type and a single active underline. */
body.ir-site .site-header.run-navigation {
  grid-template-columns: 220px minmax(0, 1fr) auto;
  min-height: 78px;
  border-bottom: 1px solid #e0e6e5 !important;
  background: #fff !important;
  box-shadow: 0 3px 18px rgba(26, 45, 47, .08) !important;
}
body.ir-site .run-navigation .brand-event-wordmark b { color: #253537 !important; font-weight: 800; }
body.ir-site .run-navigation .brand-event-wordmark small { color: var(--ir-teal) !important; }
body.ir-site .run-navigation .main-nav {
  gap: 5px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.ir-site .run-navigation .nav-group > button,
body.ir-site .run-navigation .nav-result {
  position: relative;
  min-height: 47px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #314144 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  transform: none !important;
}
body.ir-site .run-navigation .nav-group > button::after,
body.ir-site .run-navigation .nav-result::after {
  display: block !important;
  position: absolute;
  right: 12px;
  bottom: 3px;
  left: 12px;
  height: 2px;
  background: var(--ir-coral);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .2s ease;
}
body.ir-site .run-navigation .nav-group > button:hover::after,
body.ir-site .run-navigation .nav-group > button[aria-expanded="true"]::after,
body.ir-site .run-navigation .nav-result:hover::after { transform: scaleX(1); }
body.ir-site .run-navigation .nav-group > button:hover,
body.ir-site .run-navigation .nav-group > button[aria-expanded="true"],
body.ir-site .run-navigation .nav-result:hover { color: var(--ir-teal) !important; }
body.ir-site .run-navigation .header-login { border-color: #d5dfde !important; color: #263537 !important; }
body.ir-site .run-navigation .header-register,
body.ir-site main#mainContent .button-primary { background: var(--ir-coral) !important; border-color: var(--ir-coral) !important; }

/* A neutral overlay reveals the supplied runners instead of tinting them green. */
body.ir-site main#mainContent > .hero { background-color: #263537 !important; }
body.ir-site .hero-image-scrim {
  background: linear-gradient(90deg, rgba(25, 35, 37, .88) 0%, rgba(25, 35, 37, .68) 34%, rgba(25, 35, 37, .21) 72%, rgba(25, 35, 37, .08) 100%) !important;
}
body.ir-site .hero .hero-edition,
body.ir-site .hero .eyebrow.light,
body.ir-site .hero-event-brand small { color: #e7f0ee !important; }
body.ir-site .hero-event-brand b { color: #fff !important; font-weight: 800 !important; }
body.ir-site .hero-event-brand em { color: #fff !important; font-style: normal; }
body.ir-site .hero .hero-intro { color: #f1f4f3 !important; }
body.ir-site .hero .button-quiet { border-color: rgba(255,255,255,.75) !important; background: rgba(20,30,32,.28) !important; }
body.ir-site .hero-facts { background: #fff !important; box-shadow: 0 8px 22px rgba(22,39,42,.06) !important; }
body.ir-site .hero-facts > div > span { color: #657579 !important; }
body.ir-site .hero-facts > div > strong { color: var(--ir-ink) !important; }
body.ir-site .hero-facts .countdown-wrap { border-left: 3px solid var(--ir-coral); background: #fcefeb !important; }
body.ir-site .hero-facts .countdown strong { color: #a84238 !important; }

/* Event calendar and course preview. */
body.ir-site .all-events-list { border-color: var(--ir-line) !important; background: #fff !important; }
body.ir-site .upcoming-event { border-color: #e2e8e7 !important; }
body.ir-site .pune-event { border-top-color: var(--ir-coral) !important; background: #29393b !important; }
body.ir-site .pune-event :is(h3, dd, .pune-event-races a) { color: #fff !important; }
body.ir-site .pune-event :is(p, dt, .pune-event-races small, .pune-event-intro) { color: #dce7e5 !important; }
body.ir-site .pune-event-cta { background: var(--ir-coral) !important; color: #fff !important; }
body.ir-site .pune-event-cta:hover { background: #b8463d !important; }
body.ir-site .journey-heading h2 { max-width: 690px; }
body.ir-site .journey-route { background: #29393b !important; }
body.ir-site .journey-route-top strong,
body.ir-site .journey-route-control output { color: #b8e5df !important; }
body.ir-site .journey-lane-progress { stroke: #55bbb3; }
body.ir-site .journey-route-control input { accent-color: #55bbb3; }
body.ir-site .journey-route-centre small { color: #b8e5df !important; }
body.ir-site .journey-register { background: var(--ir-coral) !important; }

/* Content and tools use borders for structure, not tinted photo backgrounds. */
body.ir-site main#mainContent .story-poster { box-shadow: none !important; }
body.ir-site main#mainContent .metrics { border-color: var(--ir-line) !important; }
body.ir-site main#mainContent .metrics strong { color: var(--ir-teal) !important; }
body.ir-site main#mainContent .sponsor-heading h2 { color: var(--ir-ink) !important; }
body.ir-site main#mainContent .sponsor-lockup { border-color: #d5e0df !important; }
body.ir-site main#mainContent .sponsor-lockup :is(strong, span) { color: var(--ir-ink) !important; }
body.ir-site main#mainContent .sponsor-available strong { background: #deeeec !important; color: #18686a !important; }
body.ir-site main#mainContent .sponsor-contact { color: var(--ir-teal) !important; }
body.ir-site main#mainContent .contest-card {
  border: 1px solid var(--ir-line) !important;
  border-top: 3px solid var(--ir-teal) !important;
  background: #fff !important;
  box-shadow: 0 4px 18px rgba(26,45,47,.05) !important;
}
body.ir-site main#mainContent .contest-card:nth-child(2) { border-top-color: var(--ir-coral) !important; }
body.ir-site main#mainContent .contest-card h3 { font-size: clamp(25px, 2.5vw, 31px) !important; }
body.ir-site main#mainContent :is(.runner-hub-shell, .form-panel, .results-tool) {
  border-color: var(--ir-line) !important;
  background: #fff !important;
  box-shadow: 0 4px 20px rgba(26,45,47,.05) !important;
}
body.ir-site main#mainContent .hub-tabs button.active { background: #e8f4f3 !important; color: #086e72 !important; }
body.ir-site main#mainContent :is(.form-title, .hub-panel-heading, .selection-summary, .payment-summary) { background: #f5f8f8 !important; }
body.ir-site main#mainContent .schedule .timeline { border-top-color: var(--ir-teal) !important; }
body.ir-site main#mainContent .schedule .timeline time { color: var(--ir-ink) !important; }
body.ir-site main#mainContent .faq-list details { background: #fff !important; }

body.ir-site main#mainContent > .closing { background: #29393b !important; }
body.ir-site main#mainContent > .closing > .section-photo {
  background-image: linear-gradient(90deg, rgba(25,35,37,.87), rgba(25,35,37,.32)), url("assets/running/user-run-08-finish.jpg") !important;
}
body.ir-site main#mainContent .closing :is(h2, p, .eyebrow, .section-label) { color: #fff !important; }
body.ir-site .site-footer { border-top: 3px solid var(--ir-coral) !important; background: #29393b !important; }
body.ir-site .site-footer .footer-support-logo { background: #fff !important; }
body.ir-site .site-footer .footer-organiser-logo { background: #050505 !important; }
body.ir-site .site-footer .footer-links a:hover,
body.ir-site .site-footer .footer-bottom a { color: #a9dfd9 !important; }

@media (max-width: 1100px) {
  body.ir-site .site-header.run-navigation { grid-template-columns: minmax(0, 1fr) auto; }
  body.ir-site .run-navigation .main-nav { background: #fff !important; }
  body.ir-site .run-navigation .nav-group > button::after,
  body.ir-site .run-navigation .nav-result::after { display: none !important; }
  body.ir-site .run-navigation .nav-group > button,
  body.ir-site .run-navigation .nav-result { font-size: 14px !important; }
}

@media (max-width: 680px) {
  body.ir-site main#mainContent h2,
  body.ir-site main#mainContent .event-calendar-heading h2,
  body.ir-site main#mainContent .journey-heading h2 { font-size: clamp(30px, 8vw, 39px) !important; }
  body.ir-site .hero-image-scrim {
    background: linear-gradient(90deg, rgba(25,35,37,.88), rgba(25,35,37,.64) 58%, rgba(25,35,37,.32)) !important;
  }
  body.ir-site .hero-facts .countdown-wrap { background: #fcefeb !important; }
  body.ir-site .pune-event { padding: 24px 20px; }
}

body.ir-site main#mainContent > section#event-calendar { background: #f4f7f7 !important; }
body.ir-site main#mainContent .contest-card::before { display: none !important; }
body.ir-site .site-footer .footer-organiser-logo img { transform: scale(1.25); }
