:root {
  --kion-black: #02060c;
  --kion-void: #040a13;
  --kion-dark: #07101d;
  --kion-navy: #081a31;
  --kion-blue: #1aa7ff;
  --kion-blue-soft: rgba(26, 167, 255, .18);
  --kion-lime: #b7ff2a;
  --kion-lime-soft: rgba(183, 255, 42, .18);
  --kion-text: #f4f8ff;
  --kion-muted: #93a3b8;
  --kion-card: rgba(7, 16, 29, .82);
  --kion-card-strong: rgba(10, 24, 43, .94);
  --kion-border: rgba(183, 255, 42, .18);
  --kion-blue-border: rgba(26, 167, 255, .18);
}

/* Kion v3.12.221 - authoritative iPhone and iPad responsive layer */
html { overflow-x: clip; -webkit-text-size-adjust: 100%; }
body { min-width: 0; overflow-x: clip; }
*, *::before, *::after { box-sizing: border-box; }
img, video, canvas, iframe, svg { max-width: 100%; }
.site-main, .site-main > *, .container, .wrap, .site-container { min-width: 0; }

@media (max-width: 1024px) {
  .container {
    width: auto !important;
    max-width: none !important;
    margin-inline: max(18px, env(safe-area-inset-left)) max(18px, env(safe-area-inset-right)) !important;
  }

  .site-header { position: sticky !important; top: 0 !important; z-index: 1000 !important; }
  .site-header .nav-wrap { min-height: 82px !important; gap: 16px; }
  .brand-logo { width: min(210px, 48vw) !important; min-width: 0 !important; }
  .brand-logo img, .brand-logo .custom-logo, .kion-header-logo { width: 100% !important; height: auto !important; }
  .menu-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 72px;
    min-height: 44px;
    flex: 0 0 auto;
    font-size: 14px;
    cursor: pointer;
  }
  .primary-nav {
    display: none !important;
    position: absolute !important;
    top: 82px !important;
    left: 0 !important;
    right: 0 !important;
    max-height: calc(100dvh - 82px);
    padding: 14px max(18px, env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left)) !important;
    overflow-y: auto;
    background: rgba(2, 6, 12, .985) !important;
    border-bottom: 1px solid rgba(183,255,42,.28);
    box-shadow: 0 24px 50px rgba(0,0,0,.5);
  }
  .primary-nav.is-open { display: block !important; }
  .primary-nav ul, .primary-nav .menu {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
  .primary-nav li { min-width: 0; }
  .primary-nav a {
    display: flex !important;
    align-items: center;
    min-height: 46px;
    width: 100%;
    padding: 10px 12px !important;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 12px;
    background: rgba(255,255,255,.035);
    font-size: .76rem !important;
    white-space: normal !important;
  }

  .hero-section { padding: 68px 0 58px !important; }
  .section, .cta-section { padding: 56px 0 !important; }
  .hero-grid, .two-column, .footer-grid { grid-template-columns: 1fr !important; gap: 26px !important; }
  .card-grid, .drivers-grid, .partners-grid, .race-grid, .calendar-grid, .logo-strip, .integration-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .card, .stat-card, .cta-box, .timeline-item, .planner-step-card, .kion-data-panel { min-width: 0; }
  .site-footer .footer-grid, .site-footer .footer-grid:has(.footer-member-navigation-column) { grid-template-columns: 1fr !important; }

  input, select, textarea, button { max-width: 100%; }
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { width: 100%; min-width: 0; font-size: 16px !important; }
  button, .button, [role="button"], input[type="submit"] { min-height: 44px; touch-action: manipulation; }
  table { max-width: none; }
  .table-wrap, .kion-table-wrap, .kion-results-table-wrap, .availability-table, .wp-block-table {
    max-width: 100%; overflow-x: auto !important; -webkit-overflow-scrolling: touch;
  }

  .kion-wizard-progress {
    position: static !important;
    display: flex !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    padding: 10px !important;
    overflow-x: auto;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }
  .kion-wizard-step { flex: 0 0 min(190px, 42vw); min-height: 48px; scroll-snap-align: start; }
  .planner-field-grid, .strategy-field-grid, .driver-picker-grid, .availability-grid,
  .coverage-board, .strategy-driver-grid, .kion-strategy-intel-grid, .final-stint-detail-grid,
  .manual-stint-time-controls, .kion-rc-command-center, .kion-rc-decision-grid, .kion-rc-graphs {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
  .kion-rc-stint-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
}

@media (max-width: 680px) {
  .container {
    margin-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)) !important;
  }
  .site-header .nav-wrap { min-height: 72px !important; }
  .brand-logo { width: min(170px, 52vw) !important; }
  .primary-nav { top: 72px !important; max-height: calc(100dvh - 72px); }
  .primary-nav ul, .primary-nav .menu { grid-template-columns: 1fr !important; }
  .hero-section { padding: 48px 0 42px !important; }
  .hero-section::before { font-size: 28vw; right: -12px; }
  .section, .cta-section { padding: 38px 0 !important; }
  h1, .hero-copy h1 { font-size: clamp(2.15rem, 12vw, 3.45rem) !important; overflow-wrap: anywhere; }
  h2, .section-heading h2 { font-size: clamp(1.75rem, 9vw, 2.5rem) !important; }
  .hero-copy p { font-size: 1rem !important; }
  .card-grid, .drivers-grid, .partners-grid, .race-grid, .calendar-grid, .logo-strip, .integration-list,
  .planner-field-grid, .strategy-field-grid, .driver-picker-grid, .availability-grid,
  .coverage-board, .strategy-driver-grid, .kion-strategy-intel-grid, .final-stint-detail-grid,
  .manual-stint-time-controls, .kion-rc-command-center, .kion-rc-decision-grid, .kion-rc-graphs,
  .kion-rc-stint-grid, .kion-rc-input-grid, .kion-live-card-fields, .kion-live-planned-summary,
  .kion-rc-decision-output { grid-template-columns: 1fr !important; }
  .card, .stat-card, .cta-box, .timeline-item, .planner-step-card, .kion-data-panel { padding: 17px !important; border-radius: 17px !important; }
  .hero-actions, .calendar-actions, .kion-wizard-actions { display: grid !important; grid-template-columns: 1fr !important; width: 100%; }
  .hero-actions .button, .calendar-actions .button, .kion-wizard-actions .button { width: 100%; }
  .timeline-item { flex-direction: column; align-items: flex-start; }
  .kion-wizard-step { flex-basis: min(168px, 72vw); justify-content: flex-start; }
  .site-footer { padding-top: 38px; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at top left, rgba(26,167,255,.12), transparent 32rem),
    radial-gradient(circle at 92% 12%, rgba(183,255,42,.07), transparent 24rem),
    linear-gradient(180deg, var(--kion-black) 0%, var(--kion-void) 46%, #02050a 100%);
  color: var(--kion-text);
  line-height: 1.6;
}
body:before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.9), transparent 78%);
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; border-radius: 18px; }
.container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 10;
  background: rgba(2, 6, 12, .86);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(183,255,42,.2);
  box-shadow: 0 10px 34px rgba(0,0,0,.42);
}
.site-header:after {
  content: "";
  display: block;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--kion-blue), var(--kion-lime), transparent);
  opacity: .82;
}
.nav-wrap { display: flex; align-items: center; justify-content: space-between; min-height: 76px; }
.brand { display: flex; align-items: center; gap: 12px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.brand-mark {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  color: #02060c;
  background: linear-gradient(135deg, var(--kion-lime), var(--kion-blue));
  font-weight: 1000;
  box-shadow: 0 0 28px rgba(183,255,42,.22), inset 0 0 0 1px rgba(255,255,255,.25);
}
.primary-nav ul { display: flex; gap: 24px; list-style: none; margin: 0; padding: 0; }
.primary-nav a { color: var(--kion-muted); font-weight: 800; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
.primary-nav a:hover { color: var(--kion-lime); text-shadow: 0 0 16px rgba(183,255,42,.4); }
.menu-toggle { display: none; border: 1px solid var(--kion-border); background: rgba(183,255,42,.08); color: var(--kion-text); border-radius: 999px; padding: 8px 14px; }

.hero-section {
  position: relative;
  overflow: hidden;
  padding: 126px 0 102px;
  background:
    linear-gradient(115deg, rgba(2,6,12,.96) 0%, rgba(4,10,19,.94) 42%, rgba(8,26,49,.82) 100%),
    radial-gradient(circle at 12% 18%, rgba(26,167,255,.18), transparent 24rem),
    radial-gradient(circle at 82% 8%, rgba(183,255,42,.12), transparent 22rem);
}
.hero-section:before {
  content: "KION";
  position: absolute;
  right: -42px;
  top: 56px;
  font-size: clamp(96px, 18vw, 250px);
  line-height: 1;
  font-weight: 1000;
  letter-spacing: -.08em;
  color: rgba(255,255,255,.025);
}
.hero-section:after {
  content: "";
  position: absolute;
  inset: auto -10% -95px -10%;
  height: 230px;
  background: linear-gradient(90deg, transparent, rgba(26,167,255,.20), rgba(183,255,42,.22), transparent);
  transform: rotate(-3deg);
  filter: blur(.2px);
}
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.25fr .75fr; gap: 46px; align-items: center; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--kion-lime); text-transform: uppercase; letter-spacing: .18em; font-size: 12px; font-weight: 1000; margin-bottom: 12px; }
.eyebrow:before { content: ""; width: 34px; height: 2px; background: linear-gradient(90deg, var(--kion-lime), var(--kion-blue)); box-shadow: 0 0 16px rgba(183,255,42,.42); }
h1, h2, h3 { line-height: 1.04; margin: 0 0 18px; }
h1 { font-size: clamp(46px, 7vw, 88px); max-width: 880px; letter-spacing: -.055em; }
h2 { font-size: clamp(30px, 4vw, 54px); letter-spacing: -.035em; }
p { color: var(--kion-muted); margin: 0 0 20px; }
.hero-copy p { font-size: 20px; max-width: 700px; color: #bcc9d8; }
.hero-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 30px; }
.button { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 14px 23px; font-weight: 1000; border: 1px solid var(--kion-border); text-transform: uppercase; letter-spacing: .04em; font-size: 13px; }
.button-primary { background: linear-gradient(135deg, var(--kion-lime), #d8ff74); color: #02060c; border-color: rgba(183,255,42,.7); box-shadow: 0 0 30px rgba(183,255,42,.20); }
.button-primary:hover { transform: translateY(-1px); box-shadow: 0 0 42px rgba(183,255,42,.30); }
.button-secondary { color: var(--kion-text); background: rgba(26,167,255,.08); border-color: rgba(26,167,255,.26); }
.button-secondary:hover { color: var(--kion-lime); border-color: var(--kion-lime); }
.hero-panel { display: grid; gap: 14px; }
.stat-card, .card, .cta-box, .timeline-item {
  background: linear-gradient(180deg, var(--kion-card-strong), rgba(4,10,19,.88));
  border: 1px solid var(--kion-border);
  border-left: 3px solid var(--kion-lime);
  border-radius: 24px;
  padding: 24px;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04);
}
.stat-card { position: relative; overflow: hidden; }
.stat-card:after { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at top right, rgba(26,167,255,.14), transparent 50%); pointer-events: none; }
.stat-card span { display: block; color: var(--kion-muted); font-size: 12px; text-transform: uppercase; letter-spacing: .14em; }
.stat-card strong { display: block; font-size: 31px; color: var(--kion-text); }

.section { position: relative; padding: 88px 0; }
.surface { background: rgba(2,6,12,.52); border-top: 1px solid rgba(26,167,255,.12); border-bottom: 1px solid rgba(183,255,42,.12); }
.two-column { display: grid; grid-template-columns: .85fr 1.15fr; gap: 42px; align-items: start; }
.section-heading { max-width: 780px; margin-bottom: 36px; }
.card-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.card { transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.card:hover { transform: translateY(-3px); border-color: rgba(183,255,42,.48); box-shadow: 0 28px 90px rgba(0,0,0,.46), 0 0 34px rgba(26,167,255,.08); }
.card h3 { font-size: 24px; }
.card a { color: var(--kion-lime); font-weight: 1000; text-transform: uppercase; font-size: 13px; letter-spacing: .05em; }
.placeholder { min-height: 220px; }
.timeline { display: grid; gap: 14px; }
.timeline-item { display: flex; justify-content: space-between; gap: 18px; align-items: center; border-left-color: var(--kion-blue); }
.timeline-item strong { font-size: 20px; }
.timeline-item span { color: var(--kion-muted); }
.integration-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.integration-list div, .logo-strip span {
  padding: 18px;
  border-radius: 18px;
  background: rgba(7,16,29,.78);
  border: 1px solid var(--kion-blue-border);
  color: var(--kion-text);
  font-weight: 900;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}
.integration-list div:before { content: "▰"; color: var(--kion-lime); margin-right: 10px; }
.logo-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.logo-strip span { text-align: center; color: #c8d4e4; text-transform: uppercase; letter-spacing: .06em; }
.cta-section { padding: 96px 0; background: radial-gradient(circle at center, rgba(183,255,42,.10), transparent 34rem), linear-gradient(135deg, rgba(2,6,12,.96), rgba(8,26,49,.76)); }
.cta-box { text-align: center; max-width: 880px; border-left: 1px solid var(--kion-border); border-top: 3px solid var(--kion-lime); }
.cta-box p { margin-left: auto; margin-right: auto; max-width: 700px; }
.site-footer { border-top: 1px solid rgba(183,255,42,.14); background: #02060c; padding: 56px 0 0; }
.footer-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(260px, .95fr); gap: 30px; align-items: start; }
.footer-grid h3, .footer-grid h4 { margin-top: 0; }
.footer-bottom { text-align: center; color: var(--kion-muted); border-top: 1px solid rgba(183,255,42,.12); padding: 18px; margin-top: 34px; font-size: 14px; }
.page-content { max-width: 900px; }
.post-card { padding: 24px 0; border-bottom: 1px solid rgba(183,255,42,.12); }

@media (max-width: 820px) {
  .menu-toggle { display: inline-flex; }
  .primary-nav { display: none; position: absolute; top: 78px; left: 0; right: 0; padding: 20px; background: rgba(2,6,12,.98); border-bottom: 1px solid var(--kion-border); }
  .primary-nav.is-open { display: block; }
  .primary-nav ul { flex-direction: column; }
  .hero-section { padding: 92px 0 76px; }
  .hero-grid, .two-column, .footer-grid { grid-template-columns: 1fr; }
  .card-grid, .logo-strip, .integration-list { grid-template-columns: 1fr; }
  .timeline-item { align-items: flex-start; flex-direction: column; }
}

/* Kion logo header integration */
.brand-logo {
  min-width: 172px;
}
.brand-logo img,
.brand-logo .custom-logo {
  display: block;
  width: auto;
  height: 62px;
  max-width: 230px;
  object-fit: contain;
  border-radius: 0;
  filter: drop-shadow(0 0 18px rgba(26,167,255,.22));
  transition: transform .18s ease, filter .18s ease;
}
.brand-logo:hover img,
.brand-logo:hover .custom-logo {
  transform: translateY(-1px) scale(1.02);
  filter: drop-shadow(0 0 20px rgba(183,255,42,.30)) drop-shadow(0 0 24px rgba(26,167,255,.24));
}
.site-header {
  background:
    radial-gradient(circle at 8% 50%, rgba(26,167,255,.16), transparent 18rem),
    linear-gradient(180deg, rgba(2,6,12,.96), rgba(4,10,19,.92));
}
.nav-wrap {
  min-height: 88px;
}
@media (max-width: 820px) {
  .brand-logo { min-width: 132px; }
  .brand-logo img,
  .brand-logo .custom-logo { height: 50px; max-width: 170px; }
  .nav-wrap { min-height: 74px; }
  .primary-nav { top: 74px; }
}

/* v1.4: forced visible Kion header logo */
.brand-logo {
  flex: 0 0 auto;
  min-width: 240px;
  line-height: 0;
}
.brand-logo .kion-header-logo {
  display: block !important;
  width: 240px !important;
  max-width: 240px !important;
  height: auto !important;
  max-height: 118px !important;
  object-fit: contain;
  border-radius: 0 !important;
  filter: drop-shadow(0 0 14px rgba(26,167,255,.42)) drop-shadow(0 0 10px rgba(183,255,42,.18));
}
.site-header .nav-wrap {
  min-height: 112px;
  padding: 10px 0;
}
@media (max-width: 820px) {
  .brand-logo { min-width: 180px; }
  .brand-logo .kion-header-logo {
    width: 180px !important;
    max-width: 180px !important;
  }
  .site-header .nav-wrap { min-height: 86px; }
  .primary-nav { top: 86px; }
}

/* v1.6: centered Kion lion background, 70vh height */
body {
  position: relative;
  background:
    radial-gradient(circle at top left, rgba(26,167,255,.14), transparent 34rem),
    radial-gradient(circle at 92% 12%, rgba(183,255,42,.08), transparent 26rem),
    linear-gradient(180deg, var(--kion-black) 0%, var(--kion-void) 46%, #02050a 100%);
}

body::after {
  content: "";
  position: fixed;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(2, 6, 12, .92) 0%, rgba(2, 6, 12, .38) 42%, rgba(2, 6, 12, .92) 100%),
    linear-gradient(180deg, rgba(2, 6, 12, .78) 0%, rgba(2, 6, 12, .24) 44%, rgba(2, 6, 12, .80) 100%),
    url('../img/kion-lion-background.png');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 70vh;
  opacity: .42;
}

.site-main,
.site-footer,
.site-header {
  position: relative;
  z-index: 1;
}

.hero-section,
.surface,
.cta-section {
  background-color: rgba(2, 6, 12, .58);
}

@media (max-width: 820px) {
  body::after {
    background-size: auto 58vh;
    background-position: center center;
    opacity: .28;
  }
}


/* v1.7: animated Kion depth, moving light streaks and sponsor bar */
body::after {
  opacity: .56;
  filter:
    brightness(1.38)
    contrast(1.18)
    saturate(1.12)
    drop-shadow(0 0 34px rgba(26, 167, 255, .22))
    drop-shadow(0 0 62px rgba(183, 255, 42, .16));
  animation: kionBackgroundPulse 7.5s ease-in-out infinite;
}

@keyframes kionBackgroundPulse {
  0%, 100% {
    opacity: .48;
    filter: brightness(1.24) contrast(1.12) saturate(1.05) drop-shadow(0 0 24px rgba(26,167,255,.16)) drop-shadow(0 0 46px rgba(183,255,42,.10));
  }
  50% {
    opacity: .64;
    filter: brightness(1.52) contrast(1.23) saturate(1.16) drop-shadow(0 0 44px rgba(26,167,255,.28)) drop-shadow(0 0 86px rgba(183,255,42,.20));
  }
}

.kion-light-streaks {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  mix-blend-mode: screen;
}

.kion-light-streaks .streak {
  position: absolute;
  left: -35vw;
  width: 34vw;
  height: 2px;
  border-radius: 999px;
  opacity: 0;
  transform: rotate(-16deg);
  background: linear-gradient(90deg, transparent, rgba(26,167,255,.05), rgba(183,255,42,.72), rgba(255,255,255,.82), rgba(26,167,255,.28), transparent);
  box-shadow: 0 0 18px rgba(183,255,42,.40), 0 0 42px rgba(26,167,255,.20);
  animation: kionLightSweep 8s linear infinite;
}

.kion-light-streaks .streak-one { top: 24%; animation-delay: 0s; }
.kion-light-streaks .streak-two { top: 54%; animation-delay: 2.6s; width: 46vw; }
.kion-light-streaks .streak-three { top: 78%; animation-delay: 5.1s; width: 28vw; background: linear-gradient(90deg, transparent, rgba(26,167,255,.70), rgba(255,255,255,.70), rgba(183,255,42,.28), transparent); }

@keyframes kionLightSweep {
  0% { transform: translate3d(-10vw, 0, 0) rotate(-16deg); opacity: 0; }
  9% { opacity: .62; }
  48% { opacity: .44; }
  70% { opacity: 0; }
  100% { transform: translate3d(150vw, -18vh, 0) rotate(-16deg); opacity: 0; }
}

.sponsor-bar {
  position: sticky;
  top: 112px;
  z-index: 9;
  overflow: hidden;
  border-bottom: 1px solid rgba(183,255,42,.18);
  background:
    linear-gradient(90deg, rgba(2,6,12,.94), rgba(8,26,49,.90), rgba(2,6,12,.94));
  box-shadow: 0 12px 34px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.035);
}

.sponsor-bar::before,
.sponsor-bar::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 90px;
  z-index: 2;
  pointer-events: none;
}
.sponsor-bar::before { left: 0; background: linear-gradient(90deg, #02060c, transparent); }
.sponsor-bar::after { right: 0; background: linear-gradient(270deg, #02060c, transparent); }

.sponsor-track {
  display: flex;
  width: max-content;
  gap: 38px;
  align-items: center;
  min-height: 42px;
  padding: 0 38px;
  animation: kionSponsorScroll 32s linear infinite;
}

.sponsor-track span {
  color: #dbe8f6;
  font-size: 12px;
  font-weight: 1000;
  letter-spacing: .14em;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: .88;
  text-shadow: 0 0 14px rgba(26,167,255,.22);
}

.sponsor-track span:nth-child(3n+1) { color: var(--kion-lime); }
.sponsor-track span:nth-child(3n+2) { color: #8ed9ff; }

.sponsor-track span::before {
  content: "◆";
  margin-right: 38px;
  color: rgba(183,255,42,.54);
  font-size: 9px;
  vertical-align: 1px;
}

@keyframes kionSponsorScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.site-main,
.site-footer,
.site-header,
.sponsor-bar {
  position: relative;
  z-index: 2;
}

@media (max-width: 820px) {
  .sponsor-bar { top: 86px; }
  .sponsor-track { min-height: 36px; gap: 26px; animation-duration: 24s; }
  .sponsor-track span { font-size: 11px; letter-spacing: .11em; }
  .kion-light-streaks .streak { width: 58vw; }
  body::after { opacity: .40; }
}

@media (prefers-reduced-motion: reduce) {
  body::after,
  .kion-light-streaks .streak,
  .sponsor-track {
    animation: none !important;
  }
  .kion-light-streaks { display: none; }
}

/* v1.8: Driver profile + future iRacing stat fields */
.driver-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.driver-avatar-placeholder {
  display: grid;
  place-items: center;
  min-height: 150px;
  border-radius: 20px;
  background:
    radial-gradient(circle at 50% 20%, rgba(183,255,42,.18), transparent 18rem),
    linear-gradient(135deg, rgba(26,167,255,.18), rgba(2,6,12,.88));
  border: 1px solid rgba(183,255,42,.22);
  color: rgba(244,248,255,.72);
  font-size: 42px;
  font-weight: 1000;
  letter-spacing: -.08em;
  text-shadow: 0 0 26px rgba(26,167,255,.34);
}
.driver-avatar-large { min-height: 280px; font-size: 72px; }
.driver-role {
  color: var(--kion-lime);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 11px;
  font-weight: 1000;
}
.driver-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.driver-meta.stacked { flex-direction: column; }
.driver-meta span {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(26,167,255,.08);
  border: 1px solid rgba(26,167,255,.20);
  color: #c8d4e4;
  font-size: 12px;
  font-weight: 900;
}
.driver-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.driver-stats div {
  padding: 14px;
  border-radius: 16px;
  background: rgba(2,6,12,.58);
  border: 1px solid rgba(183,255,42,.16);
}
.driver-stats small {
  display: block;
  color: var(--kion-muted);
  text-transform: uppercase;
  letter-spacing: .10em;
  font-size: 10px;
  font-weight: 900;
  margin-bottom: 6px;
}
.driver-stats strong {
  display: block;
  color: var(--kion-text);
  font-size: 18px;
}
.driver-links {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: auto;
}
.driver-profile-section { padding-top: 80px; }
.driver-profile-grid {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 34px;
  align-items: start;
}
.driver-profile-card,
.driver-profile-content,
.integration-note {
  background: linear-gradient(180deg, var(--kion-card-strong), rgba(4,10,19,.88));
  border: 1px solid var(--kion-border);
  border-radius: 28px;
  box-shadow: 0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04);
}
.driver-profile-card { padding: 24px; border-top: 3px solid var(--kion-lime); }
.driver-profile-card h1 { font-size: clamp(34px, 4vw, 54px); }
.driver-profile-card .button { margin-top: 22px; width: 100%; }
.driver-profile-content { padding: 34px; border-left: 3px solid var(--kion-blue); }
.driver-stats-large { grid-template-columns: repeat(4, 1fr); margin: 24px 0; }
.driver-stats-large strong { font-size: 20px; }
.driver-bio { color: var(--kion-muted); }
.integration-note {
  margin-top: 24px;
  padding: 18px;
  color: #c8d4e4;
  border-left: 3px solid var(--kion-lime);
}
.integration-note strong { color: var(--kion-lime); }

@media (max-width: 900px) {
  .driver-profile-grid { grid-template-columns: 1fr; }
  .driver-stats-large { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .driver-stats, .driver-stats-large { grid-template-columns: 1fr; }
}


/* Kion Driver Stats v1.9 */
.kion-data-panel {
    margin-top: 26px;
    padding: 22px;
    border: 1px solid rgba(42, 224, 255, 0.16);
    background: linear-gradient(135deg, rgba(5, 10, 24, 0.88), rgba(2, 6, 14, 0.96));
    border-radius: 22px;
    box-shadow: 0 18px 60px rgba(0,0,0,0.32), inset 0 0 0 1px rgba(174,255,0,0.05);
}
.kion-data-panel h3 {
    margin: 0 0 14px;
    color: var(--kion-lime, #b6ff00);
    letter-spacing: .04em;
    text-transform: uppercase;
    font-size: 0.95rem;
}
.kion-class-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 14px;
}
.kion-class-card {
    padding: 16px;
    border-radius: 18px;
    background: rgba(255,255,255,0.035);
    border: 1px solid rgba(255,255,255,0.08);
}
.kion-class-card h4 {
    margin: 0 0 10px;
    color: #fff;
}
.kion-class-card span {
    display: block;
    color: rgba(255,255,255,0.68);
    font-size: 0.9rem;
    margin: 5px 0;
}
.kion-class-card strong { color: #fff; }
.kion-results-table-wrap { overflow-x: auto; }
.kion-results-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 760px;
}
.kion-results-table th,
.kion-results-table td {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    text-align: left;
    color: rgba(255,255,255,0.78);
}
.kion-results-table th {
    color: var(--kion-blue-light, #2ae0ff);
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}


/* v2.1: Pro dynamic sponsor bar + partner grid */
.partner-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 18px;
}

.partner-card {
  min-height: 128px;
  padding: 22px;
  border: 1px solid rgba(183,255,42,.14);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(5,13,24,.90), rgba(10,26,48,.62));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 18px 40px rgba(0,0,0,.20);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.partner-card:hover {
  transform: translateY(-3px);
  border-color: rgba(183,255,42,.42);
  box-shadow: 0 0 34px rgba(183,255,42,.10), 0 20px 44px rgba(0,0,0,.24);
}

.partner-card a {
  color: inherit;
  text-decoration: none;
  width: 100%;
}

.partner-logo-wrap {
  min-height: 58px;
  display: grid;
  place-items: center;
}

.partner-logo-wrap img {
  max-height: 64px;
  max-width: 180px;
  width: auto;
  object-fit: contain;
  filter: saturate(1.03) brightness(1.06);
}

.partner-logo-wrap span {
  color: #dbe8f6;
  font-weight: 1000;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.partner-card small {
  display: block;
  margin-top: 12px;
  color: rgba(183,255,42,.78);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.sponsor-track:hover {
  animation-play-state: paused;
}

.sponsor-entry {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: max-content;
  position: relative;
}

.sponsor-entry a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none;
}

.sponsor-logo-img {
  display: block;
  max-height: 26px;
  max-width: 150px;
  width: auto;
  object-fit: contain;
  filter: grayscale(.12) brightness(1.12) drop-shadow(0 0 10px rgba(26,167,255,.12));
  opacity: .88;
  transition: filter .25s ease, opacity .25s ease, transform .25s ease;
}

.sponsor-entry:hover .sponsor-logo-img {
  opacity: 1;
  transform: scale(1.04);
  filter: grayscale(0) brightness(1.24) drop-shadow(0 0 16px rgba(183,255,42,.28));
}

.sponsor-text {
  color: #dbe8f6;
  font-size: 12px;
  font-weight: 1000;
  letter-spacing: .14em;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: .88;
  text-shadow: 0 0 14px rgba(26,167,255,.22);
}

.sponsor-entry:nth-child(3n+1) .sponsor-text { color: var(--kion-lime); }
.sponsor-entry:nth-child(3n+2) .sponsor-text { color: #8ed9ff; }

.sponsor-entry::before {
  content: "◆";
  margin-right: 38px;
  color: rgba(183,255,42,.54);
  font-size: 9px;
  vertical-align: 1px;
}

@media (max-width: 820px) {
  .sponsor-logo-img { max-height: 22px; max-width: 120px; }
  .sponsor-entry::before { margin-right: 26px; }
}

/* Kion Settings powered footer */
.footer-contact {
    font-style: normal;
    display: grid;
    gap: 6px;
    color: rgba(255,255,255,0.72);
}
.footer-contact span { display: block; }
.footer-contact a,
.kion-social-links a {
    color: inherit;
    text-decoration: none;
}
.footer-contact a:hover,
.kion-social-links a:hover {
    color: var(--kion-lime, #b6ff00);
    text-shadow: 0 0 12px rgba(182,255,0,.35);
}
.kion-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}
.kion-social-link {
    border: 1px solid rgba(182,255,0,.25);
    background: rgba(182,255,0,.06);
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 12px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

/* v2.3: Pro Race Calendar */
.calendar-heading {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: end;
  max-width: none;
}
.pro-calendar-section {
  overflow: hidden;
}
.next-race-card {
  position: relative;
  overflow: hidden;
  min-height: 420px;
  border-radius: 32px;
  border: 1px solid rgba(183,255,42,.24);
  background:
    radial-gradient(circle at 80% 10%, rgba(183,255,42,.14), transparent 24rem),
    linear-gradient(135deg, rgba(2,6,12,.96), rgba(8,26,49,.78));
  box-shadow: 0 34px 110px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.05);
  margin-bottom: 28px;
}
.next-race-card:before {
  content: "NEXT RACE";
  position: absolute;
  right: -18px;
  top: 18px;
  font-size: clamp(48px, 8vw, 130px);
  font-weight: 1000;
  letter-spacing: -.08em;
  color: rgba(255,255,255,.035);
  pointer-events: none;
}
.next-race-bg {
  position: absolute;
  inset: 0;
  opacity: .16;
}
.next-race-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  filter: grayscale(1) contrast(1.22);
}
.next-race-content {
  position: relative;
  z-index: 1;
  max-width: 760px;
  padding: clamp(28px, 6vw, 62px);
}
.next-race-content h3 {
  font-size: clamp(36px, 6vw, 76px);
  letter-spacing: -.055em;
  margin-top: 12px;
}
.next-race-meta,
.event-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0;
}
.next-race-meta span,
.event-tags span,
.calendar-status {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: 8px 12px;
  background: rgba(26,167,255,.09);
  border: 1px solid rgba(26,167,255,.22);
  color: #d7e5f4;
  font-size: 12px;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.event-tags span.kion-result-pill {
  border-color: rgba(26,167,255,.78);
  background: rgba(26,167,255,.13);
  color: #dff3ff;
  box-shadow: 0 0 18px rgba(26,167,255,.18), inset 0 0 0 1px rgba(255,255,255,.04);
}

.calendar-status {
  background: rgba(183,255,42,.12);
  border-color: rgba(183,255,42,.34);
  color: var(--kion-lime);
}
.status-live {
  background: rgba(255,60,60,.13);
  border-color: rgba(255,80,80,.42);
  color: #ff8b8b;
}
.status-finished {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
  color: #b8c4d2;
}
.status-cancelled {
  background: rgba(255,140,0,.12);
  border-color: rgba(255,140,0,.32);
  color: #ffbd72;
}
.race-countdown {
  display: grid;
  grid-template-columns: repeat(3, minmax(95px, 1fr));
  gap: 12px;
  max-width: 430px;
  margin-top: 24px;
}
.race-countdown div {
  padding: 16px;
  border-radius: 20px;
  background: rgba(2,6,12,.58);
  border: 1px solid rgba(183,255,42,.20);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.race-countdown strong {
  display: block;
  font-size: 32px;
  line-height: 1;
  color: var(--kion-text);
}
.race-countdown small {
  color: var(--kion-muted);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 900;
  font-size: 10px;
}
.pro-calendar-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.calendar-event-card {
  display: grid;
  grid-template-columns: 104px 1fr;
  gap: 18px;
  padding: 18px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(10,24,43,.92), rgba(4,10,19,.86));
  border: 1px solid rgba(183,255,42,.14);
  border-left: 3px solid var(--kion-lime);
  box-shadow: 0 20px 64px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.035);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.calendar-event-card:hover {
  transform: translateY(-3px);
  border-color: rgba(183,255,42,.36);
  box-shadow: 0 28px 90px rgba(0,0,0,.42), 0 0 34px rgba(26,167,255,.08);
}
.status-border-live { border-left-color: #ff5d5d; }
.status-border-finished { border-left-color: #7f8a99; }
.status-border-cancelled { border-left-color: #ffbd72; }
.event-date-box {
  display: grid;
  place-items: center;
  text-align: center;
  border-radius: 20px;
  background:
    radial-gradient(circle at 50% 0, rgba(183,255,42,.18), transparent 8rem),
    rgba(2,6,12,.62);
  border: 1px solid rgba(26,167,255,.20);
  min-height: 104px;
}
.event-date-box strong {
  display: block;
  font-size: 36px;
  line-height: 1;
  color: var(--kion-text);
}
.event-date-box span {
  display: block;
  color: var(--kion-lime);
  font-size: 11px;
  font-weight: 1000;
  letter-spacing: .09em;
  text-transform: uppercase;
  margin-top: 6px;
}
.event-card-topline {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 10px;
}
.event-card-topline > span:first-child {
  color: var(--kion-muted);
  font-size: 11px;
  font-weight: 1000;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.event-card-body h3 {
  font-size: 24px;
  margin-bottom: 8px;
}
.event-card-body h3 a:hover {
  color: var(--kion-lime);
}
.event-result {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(183,255,42,.08);
  border: 1px solid rgba(183,255,42,.18);
  color: #dff6b7;
  font-weight: 900;
  font-size: 13px;
}
@media (max-width: 820px) {
  .calendar-heading { align-items: flex-start; flex-direction: column; }
  .pro-calendar-grid { grid-template-columns: 1fr; }
  .calendar-event-card { grid-template-columns: 1fr; }
  .event-date-box { min-height: 84px; place-items: start; padding: 16px; }
  .race-countdown { grid-template-columns: repeat(3, 1fr); }
  .race-countdown div { padding: 12px; }
  .race-countdown strong { font-size: 24px; }
}


/* v2.4: Pro Calendar+ track maps and race notes */
.calendar-trackmap-link {
  display: block;
  margin: 2px 0 14px;
}
.calendar-trackmap {
  width: 100%;
  max-height: 150px;
  object-fit: contain;
  border-radius: 18px;
  padding: 10px;
  background: radial-gradient(circle at 50% 0, rgba(183,255,42,.10), transparent 10rem), rgba(2,6,12,.46);
  border: 1px solid rgba(26,167,255,.16);
}
.race-notes-preview {
  max-width: 760px;
  margin: 14px 0 0;
  color: var(--kion-muted);
  font-size: 15px;
  line-height: 1.65;
}
.race-notes-preview.small {
  font-size: 13px;
  line-height: 1.55;
  margin-top: 12px;
}
.event-detail-trackmap {
  width: 100%;
  max-height: 260px;
  object-fit: contain;
  border-radius: 22px;
  padding: 14px;
  margin-bottom: 18px;
  background: rgba(2,6,12,.48);
  border: 1px solid rgba(183,255,42,.16);
}
.race-notes-full {
  padding: 16px 18px;
  margin-bottom: 18px;
  border-radius: 18px;
  background: rgba(183,255,42,.06);
  border: 1px solid rgba(183,255,42,.16);
  color: var(--kion-text);
}

/* v2.5: Smart race highlight + result/lineup blocks */
.next-race-card.highlight-finished {
  border-color: rgba(26,167,255,.30);
  background:
    radial-gradient(circle at 78% 8%, rgba(26,167,255,.16), transparent 24rem),
    linear-gradient(135deg, rgba(2,6,12,.97), rgba(7,20,38,.82));
}
.next-race-card.highlight-finished:before { content: "LAST RACE"; }
.next-race-card.highlight-upcoming:before { content: "NEXT RACE"; }
.highlight-result-box,
.highlight-lineup-box,
.event-lineup {
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(2,6,12,.58);
  border: 1px solid rgba(26,167,255,.20);
  color: var(--kion-text);
}
.highlight-result-box strong {
  display: block;
  color: var(--kion-lime);
  font-size: 16px;
  margin-bottom: 6px;
}
.highlight-result-box p,
.highlight-lineup-box p {
  margin: 0;
  color: var(--kion-muted);
  line-height: 1.6;
}
.highlight-lineup-box small {
  display: block;
  color: var(--kion-lime);
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 1000;
  margin-bottom: 8px;
}
.event-lineup {
  font-size: 13px;
  color: var(--kion-muted);
  padding: 10px 12px;
}

/* v2.6: Compact homepage calendar + dedicated calendar hub */
.compact-calendar-section {
  position: relative;
  overflow: hidden;
}
.compact-calendar-section:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(183,255,42,.05) 42%, transparent 70%);
  pointer-events: none;
}
.compact-race-highlight {
  position: relative;
  display: grid;
  grid-template-columns: minmax(220px, 34%) 1fr;
  gap: 26px;
  align-items: center;
  padding: 24px;
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 8%, rgba(183,255,42,.14), transparent 24rem),
    linear-gradient(135deg, rgba(2,6,12,.96), rgba(7,20,38,.84));
  border: 1px solid rgba(183,255,42,.24);
  box-shadow: 0 30px 80px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.03);
}
.compact-race-highlight.highlight-finished {
  background:
    radial-gradient(circle at 80% 8%, rgba(26,167,255,.16), transparent 24rem),
    linear-gradient(135deg, rgba(2,6,12,.96), rgba(7,20,38,.84));
  border-color: rgba(26,167,255,.28);
}
.compact-race-map {
  min-height: 190px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  padding: 18px;
  background: rgba(2,6,12,.55);
  border: 1px solid rgba(26,167,255,.18);
}
.compact-race-map img {
  width: 100%;
  max-height: 220px;
  object-fit: contain;
  filter: drop-shadow(0 0 24px rgba(183,255,42,.18));
}
.compact-race-map span {
  font-size: 38px;
  font-weight: 1000;
  color: rgba(183,255,42,.82);
  letter-spacing: .10em;
}
.compact-race-copy h3 {
  margin: 12px 0 8px;
  font-size: clamp(28px, 4vw, 52px);
  line-height: .95;
  letter-spacing: -.04em;
}
.compact-race-copy p {
  margin: 0 0 16px;
  color: var(--kion-muted);
  font-size: 16px;
}
.race-countdown.compact {
  justify-content: flex-start;
  margin: 18px 0;
}
.mini-calendar-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}
.mini-calendar-item {
  display: block;
  padding: 18px;
  border-radius: 20px;
  background: rgba(2,6,12,.58);
  border: 1px solid rgba(26,167,255,.16);
  text-decoration: none;
  color: var(--kion-text);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.mini-calendar-item:hover {
  transform: translateY(-3px);
  border-color: rgba(183,255,42,.35);
  box-shadow: 0 18px 46px rgba(0,0,0,.25), 0 0 24px rgba(183,255,42,.08);
}
.mini-calendar-item small {
  display: block;
  color: var(--kion-lime);
  text-transform: uppercase;
  letter-spacing: .10em;
  font-weight: 900;
  margin-bottom: 8px;
}
.mini-calendar-item strong {
  display: block;
  font-size: 18px;
  margin-bottom: 6px;
}
.mini-calendar-item span {
  display: block;
  color: var(--kion-muted);
  font-size: 13px;
}
.calendar-page-hero {
  padding-bottom: 44px;
}
@media (max-width: 850px) {
  .compact-race-highlight {
    grid-template-columns: 1fr;
  }
  .mini-calendar-strip {
    grid-template-columns: 1fr;
  }
}


/* v2.7: Dynamic event detail hero label */
.next-race-card[data-hero-label]::before {
  content: attr(data-hero-label);
}
.next-race-card.event-detail-finished::before {
  color: rgba(127,138,153,.11);
}
.next-race-card.event-detail-finished {
  border-color: rgba(127,138,153,.32);
  background:
    radial-gradient(circle at 80% 10%, rgba(127,138,153,.13), transparent 24rem),
    linear-gradient(135deg, rgba(2,6,12,.96), rgba(11,18,30,.86));
}
.next-race-card.event-detail-upcoming {
  border-color: rgba(183,255,42,.28);
}

/* Kion v2.8 event detail navigation */
.event-detail-navigation {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 24px 0 34px;
}
.event-nav-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 64px;
    padding: 14px 16px;
    border: 1px solid rgba(0, 255, 156, 0.28);
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(5, 7, 13, 0.86), rgba(10, 24, 50, 0.72));
    color: #ffffff;
    text-decoration: none;
    font-weight: 800;
    letter-spacing: 0.03em;
    box-shadow: 0 0 26px rgba(0, 255, 156, 0.08);
    transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}
.event-nav-button span {
    margin-top: 5px;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: 0;
}
.event-nav-button:hover {
    transform: translateY(-2px);
    border-color: rgba(0, 255, 156, 0.8);
    box-shadow: 0 0 36px rgba(0, 255, 156, 0.18), 0 0 42px rgba(0, 140, 255, 0.14);
}
@media (max-width: 900px) {
    .event-detail-navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .event-detail-navigation { grid-template-columns: 1fr; }
}

/* Kion v3.0 Core Stable polish */
.race-notes-full,
.race-notes-full p,
.driver-meta.stacked span,
.event-summary,
.event-summary p {
  font-size: 15px;
  line-height: 1.65;
}

.kion-driver-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.kion-driver-pill {
  display: inline-flex;
  align-items: center;
  padding: 7px 11px;
  border-radius: 999px;
  border: 1px solid rgba(183,255,42,.25);
  background: rgba(183,255,42,.08);
  color: var(--kion-text);
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.kion-driver-pill:hover {
  transform: translateY(-1px);
  border-color: rgba(183,255,42,.75);
  box-shadow: 0 0 22px rgba(183,255,42,.16);
}
.event-lineup-text {
  color: var(--kion-muted);
  font-size: 14px;
  line-height: 1.6;
}
.highlight-lineup-box.compact-lineup {
  margin-top: 14px;
}
.event-nav-disabled {
  opacity: .45;
  cursor: not-allowed;
  filter: grayscale(.4);
}
.event-nav-disabled:hover {
  transform: none;
  border-color: rgba(0, 255, 156, 0.28);
  box-shadow: 0 0 26px rgba(0, 255, 156, 0.08);
}
.drivers-directory-grid .driver-card h3 a {
  color: var(--kion-text);
  text-decoration: none;
}
.drivers-directory-card {
  min-height: 100%;
}
.calendar-event-card .event-lineup .kion-driver-pill-list {
  margin-top: 8px;
}
.calendar-event-card .event-lineup .kion-driver-pill {
  font-size: 12px;
  padding: 6px 9px;
}


/* v3.0.3: Global Kion atmosphere
   The sponsor bar and moving light streaks are intentionally site-wide, including
   homepage, calendar, drivers, event details and /login/garage61. */
body .kion-light-streaks {
  display: block;
}
body .sponsor-bar {
  display: block;
}
.kion-oauth-callback {
  position: relative;
  z-index: 3;
}
.kion-oauth-callback code {
  color: var(--kion-lime);
}

/* v3.0.4: force global sponsor bar and moving light streaks visible site-wide */
.kion-light-streaks {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  mix-blend-mode: screen;
}
.kion-light-streaks .streak {
  display: block !important;
  visibility: visible !important;
  opacity: 0;
  min-width: 320px;
  height: 3px !important;
  box-shadow: 0 0 22px rgba(183,255,42,.55), 0 0 56px rgba(26,167,255,.35) !important;
}
.sponsor-bar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  min-height: 44px !important;
  width: 100% !important;
  background: linear-gradient(90deg, rgba(2,6,12,.98), rgba(8,26,49,.96), rgba(2,6,12,.98)) !important;
  border-top: 1px solid rgba(183,255,42,.22) !important;
  border-bottom: 1px solid rgba(183,255,42,.28) !important;
}
.sponsor-track {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  width: max-content !important;
  animation: kionSponsorScroll 34s linear infinite !important;
}
.sponsor-entry,
.sponsor-text {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}
.sponsor-text {
  color: var(--kion-lime) !important;
  font-size: 12px !important;
  font-weight: 1000 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
.site-header { z-index: 1000 !important; }
.site-main, .site-footer { position: relative; z-index: 3; }
@media (prefers-reduced-motion: reduce) {
  .kion-light-streaks .streak, .sponsor-track { animation: none !important; }
}


/* Kion v3.0.5: visible status badges for compact homepage calendar cards */
.mini-calendar-meta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}
.mini-calendar-meta small {
  margin-bottom: 0;
}
.mini-status-pill {
  flex: 0 0 auto;
  font-size: 10px;
  padding: 6px 9px;
  border-radius: 999px;
  letter-spacing: .08em;
  line-height: 1;
  box-shadow: 0 0 18px rgba(0,0,0,.18);
}
.mini-calendar-item.mini-status-upcoming {
  background:
    radial-gradient(circle at 92% 12%, rgba(26,167,255,.12), transparent 12rem),
    rgba(2,6,12,.58);
}
.mini-calendar-item.mini-status-finished {
  background:
    radial-gradient(circle at 92% 12%, rgba(127,138,153,.14), transparent 12rem),
    rgba(2,6,12,.58);
}
.mini-calendar-item.mini-status-live {
  background:
    radial-gradient(circle at 92% 12%, rgba(255,59,59,.14), transparent 12rem),
    rgba(2,6,12,.58);
}
.mini-calendar-item.mini-status-finished strong,
.mini-calendar-item.mini-status-finished span:not(.calendar-status) {
  opacity: .78;
}
.status-finished {
  color: rgba(223,230,238,.88);
  border-color: rgba(127,138,153,.35);
  background: rgba(127,138,153,.12);
}
.status-upcoming {
  color: var(--kion-lime);
  border-color: rgba(183,255,42,.28);
  background: rgba(183,255,42,.08);
}
.status-next {
  color: var(--kion-lime);
  border-color: rgba(183,255,42,.38);
  background: rgba(183,255,42,.12);
}
.status-live {
  color: #ff9b9b;
  border-color: rgba(255,59,59,.36);
  background: rgba(255,59,59,.12);
}
.status-cancelled {
  color: rgba(223,230,238,.72);
  border-color: rgba(127,138,153,.25);
  background: rgba(127,138,153,.08);
}

/* Kion v3.1 Stint Planner Foundation */
.stint-planner-hero .hero-panel .stat-card strong { font-size: 1.25rem; }
.login-required-card { max-width: 760px; margin: 0 auto; text-align: center; }
.planner-event-select { display: flex; gap: 16px; align-items: center; margin-bottom: 24px; }
.planner-event-select select { width: min(520px, 100%); padding: 12px 14px; border-radius: 14px; background: rgba(6, 12, 24, .9); color: #fff; border: 1px solid rgba(65, 180, 255, .35); }
.planner-layout { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 24px; align-items: start; }
.planner-driver-list { position: sticky; top: 110px; }
.planner-driver-row { padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.08); display: grid; gap: 4px; }
.planner-driver-row a { color: #fff; font-weight: 800; text-decoration: none; }
.planner-driver-row a:hover { color: var(--kion-lime, #b6ff00); }
.planner-driver-row small { color: rgba(255,255,255,.68); }
.planner-card-heading { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; margin-bottom:18px; }
.stint-table-wrap { overflow-x: auto; border-radius: 18px; border: 1px solid rgba(255,255,255,.08); }
.stint-table { width: 100%; min-width: 980px; border-collapse: collapse; }
.stint-table th, .stint-table td { padding: 10px; border-bottom: 1px solid rgba(255,255,255,.08); vertical-align: top; }
.stint-table th { text-align: left; color: rgba(255,255,255,.75); font-size: 12px; text-transform: uppercase; letter-spacing: .08em; background: rgba(255,255,255,.04); }
.stint-table input, .stint-table select, .stint-table textarea { width: 100%; border-radius: 10px; border: 1px solid rgba(65,180,255,.25); background: rgba(3,8,18,.92); color: #fff; padding: 9px 10px; }
.stint-table textarea { resize: vertical; }
.planner-actions { margin-top: 18px; }
.kion-alert { padding: 12px 14px; border-radius: 14px; margin: 0 0 16px; background: rgba(65,180,255,.12); border: 1px solid rgba(65,180,255,.35); color: rgba(255,255,255,.88); }
.kion-alert.success { background: rgba(182,255,0,.12); border-color: rgba(182,255,0,.36); }
.driver-data-source { display:inline-flex; margin-left: 6px; padding: 2px 7px; border-radius: 99px; font-size: 10px; text-transform: uppercase; letter-spacing:.08em; border: 1px solid rgba(182,255,0,.35); color: var(--kion-lime, #b6ff00); background: rgba(182,255,0,.08); vertical-align: middle; }
.driver-ops-meta { margin-top: 14px; display:grid; gap:8px; }
.driver-ops-meta span { display:flex; justify-content:space-between; gap:16px; padding:8px 0; border-bottom:1px solid rgba(255,255,255,.08); color:rgba(255,255,255,.78); }
.driver-ops-meta strong { color:#fff; }
@media (max-width: 900px) { .planner-layout { grid-template-columns: 1fr; } .planner-driver-list { position: static; } .planner-event-select { flex-direction: column; align-items: stretch; } }


/* v3.1.1: prevent horizontal page scrolling while keeping planner table usable */
html, body {
  max-width: 100%;
  overflow-x: hidden;
}
.site, .site-main, main, .container, .section, .surface, .card {
  max-width: 100%;
}
.planner-layout, .planner-table-card, .stint-planner-section, .stint-table-wrap {
  min-width: 0;
  max-width: 100%;
}
.planner-table-card {
  overflow: hidden;
}
.stint-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.stint-table {
  max-width: 100%;
}
@media (max-width: 1100px) {
  .stint-table { min-width: 860px; }
}
@media (max-width: 700px) {
  .stint-table { min-width: 760px; }
}
.kion-alert.warning {
  border-color: rgba(255, 193, 7, .35);
  background: rgba(255, 193, 7, .08);
}

/* Kion v3.1.2 — Stint Planner Wizard */
html, body { max-width: 100%; overflow-x: hidden; }
.stint-planner-section, .stint-planner-section * { box-sizing: border-box; }
.planner-wizard { display: grid; gap: 24px; min-width: 0; }
.planner-step-card { overflow: hidden; min-width: 0; }
.planner-step-heading { display: flex; gap: 16px; align-items: center; margin-bottom: 18px; min-width: 0; }
.planner-step-number { width: 42px; height: 42px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: rgba(186,255,0,.12); border: 1px solid rgba(186,255,0,.45); color: var(--kion-lime, #baff00); font-weight: 900; flex: 0 0 auto; }
.planner-event-summary-grid, .driver-picker-grid, .availability-grid, .planner-field-grid { display: grid; gap: 14px; min-width: 0; }
.planner-event-summary-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.planner-event-summary-grid > div { padding: 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 16px; background: rgba(255,255,255,.035); min-width: 0; }
.planner-event-summary-grid span, .planner-help-text { color: var(--muted, #9da7bd); font-size: 13px; }
.planner-event-summary-grid strong { display: block; margin-top: 5px; overflow-wrap: anywhere; }
.driver-picker-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.driver-picker-card { display: grid; grid-template-columns: auto 1fr; gap: 5px 10px; align-items: start; padding: 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 18px; background: rgba(5, 10, 22, .82); cursor: pointer; min-width: 0; }
.driver-picker-card input { margin-top: 3px; }
.driver-picker-name { font-weight: 800; overflow-wrap: anywhere; }
.driver-picker-card small { grid-column: 2; color: var(--muted, #9da7bd); }
.availability-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.availability-card, .stint-edit-card { padding: 16px; border: 1px solid rgba(255,255,255,.08); border-radius: 20px; background: rgba(255,255,255,.035); min-width: 0; }
.availability-card-head, .stint-edit-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; min-width: 0; }
.availability-card-head strong, .stint-edit-card-head strong { overflow-wrap: anywhere; }
.availability-card-head small { color: var(--kion-lime, #baff00); flex: 0 0 auto; }
.planner-field-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.planner-field-grid label, .availability-card label, .stint-edit-card label { display: grid; gap: 6px; color: var(--muted, #9da7bd); font-size: 13px; min-width: 0; }
.planner-field-grid input, .planner-field-grid select, .availability-card textarea, .stint-edit-card textarea, .stint-edit-card input, .stint-edit-card select, .planner-event-select select { width: 100%; max-width: 100%; min-width: 0; }
.stint-card-list { display: grid; gap: 16px; min-width: 0; }
.stint-planner-form, .planner-setup-form { min-width: 0; }
.stint-table-wrap { overflow: visible !important; }
.stint-table { display: none; }
@media (max-width: 700px) {
  .planner-step-heading, .availability-card-head, .stint-edit-card-head { align-items: flex-start; flex-direction: column; }
  .planner-step-number { width: 36px; height: 36px; }
}

/* v3.1.3 hourly stint availability */
.hourly-availability-grid,
.coverage-slot-grid {
    max-width: 100%;
    overflow-x: hidden;
}
.hourly-availability-card {
    width: 100%;
    max-width: 100%;
}
.hour-checkbox-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 10px;
    margin: 16px 0;
    max-width: 100%;
}
.hour-checkbox {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: rgba(255,255,255,.035);
    cursor: pointer;
    overflow-wrap: anywhere;
}
.hour-checkbox input {
    align-self: flex-start;
}
.hour-checkbox span {
    font-size: 13px;
    font-weight: 800;
}
.hour-checkbox small {
    opacity: .68;
    font-size: 11px;
}
.hour-checkbox:has(input:checked),
.hour-checkbox.is-checked {
    border-color: rgba(0,255,156,.75);
    box-shadow: 0 0 18px rgba(0,255,156,.12);
    background: rgba(0,255,156,.08);
}
.coverage-board {
    margin-top: 24px;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 20px;
    background: rgba(0,0,0,.20);
}
.compact-heading {
    margin-bottom: 14px;
}
.coverage-slot-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
}
.coverage-slot {
    padding: 12px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.12);
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}
.coverage-slot strong,
.coverage-slot small {
    overflow-wrap: anywhere;
}
.coverage-slot.covered {
    background: rgba(0,255,156,.08);
    border-color: rgba(0,255,156,.28);
}
.coverage-slot.uncovered {
    background: rgba(255,55,85,.16);
    border-color: rgba(255,55,85,.65);
    box-shadow: 0 0 20px rgba(255,55,85,.14);
}
@media (max-width: 700px) {
    .hour-checkbox-grid,
    .coverage-slot-grid {
        grid-template-columns: 1fr;
    }
}

/* Kion v3.1.4 Strategy Stint Planner */
.strategy-wizard .planner-step-card { overflow: visible; }
.strategy-driver-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; margin-top: 18px; }
.strategy-driver-card { border: 1px solid rgba(0,255,156,.18); background: rgba(4,10,22,.72); border-radius: 18px; padding: 18px; box-shadow: 0 12px 35px rgba(0,0,0,.22); }
.strategy-card-head { display:flex; flex-direction:column; gap:6px; margin-bottom:14px; }
.strategy-card-head strong { color:#fff; font-size: 1.05rem; }
.strategy-card-head small { color: rgba(255,255,255,.64); line-height: 1.5; }
.strategy-field-grid { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.strategy-driver-card textarea, .strategy-driver-card input, .strategy-driver-card select,
.strategy-stint-card textarea, .strategy-stint-card input, .strategy-stint-card select { max-width: 100%; box-sizing: border-box; }
.strategy-stint-card { border: 1px solid rgba(57,148,255,.18); background: linear-gradient(180deg, rgba(10,18,36,.9), rgba(5,9,18,.94)); }
.stint-planner-section, .stint-planner-section * { max-width: 100%; box-sizing: border-box; }
.stint-planner-section { overflow-x: hidden; }
.hour-checkbox-grid, .coverage-slot-grid { overflow: visible; }
@media (max-width: 760px) {
  .strategy-driver-grid, .planner-field-grid, .strategy-field-grid { grid-template-columns: 1fr !important; }
  .hour-checkbox-grid { grid-template-columns: 1fr !important; }
}


/* v3.1.5 Auto stint slots */
.auto-slot-plan-form {
    width: 100%;
}
.auto-stint-slot-list {
    display: grid;
    gap: 16px;
    width: 100%;
}
.auto-stint-slot-card {
    border: 1px solid rgba(79, 216, 255, 0.18);
    border-radius: 18px;
    padding: 18px;
    background: rgba(5, 10, 22, 0.72);
    box-shadow: 0 12px 40px rgba(0,0,0,0.18);
    overflow: hidden;
}
.auto-stint-slot-card.missing-driver-coverage {
    border-color: rgba(255, 63, 86, 0.72);
    background: linear-gradient(135deg, rgba(70, 8, 18, 0.88), rgba(10, 14, 28, 0.88));
}
.auto-stint-slot-head {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 14px;
}
.auto-stint-slot-head strong {
    display: block;
    font-size: 1.05rem;
}
.auto-stint-slot-head span {
    color: rgba(255,255,255,0.72);
    font-size: 0.92rem;
}
.stint-coverage-badge {
    border-radius: 999px;
    padding: 7px 11px;
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    white-space: nowrap;
}
.stint-coverage-badge.available {
    color: #061018;
    background: #adff2f;
    box-shadow: 0 0 18px rgba(173,255,47,0.22);
}
.stint-coverage-badge.missing {
    color: #fff;
    background: rgba(255, 63, 86, 0.92);
    box-shadow: 0 0 18px rgba(255,63,86,0.26);
}
.auto-stint-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.strategy-notes-textarea,
.strategy-driver-card textarea,
.auto-stint-slot-card textarea {
    min-height: 150px;
    resize: vertical;
    line-height: 1.55;
}
@media (max-width: 720px) {
    .auto-stint-slot-head {
        flex-direction: column;
    }
    .stint-coverage-badge {
        white-space: normal;
    }
}

/* v3.1.6 Compact horizontal strategy notes */
.strategy-notes-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
    width: 100%;
}
.strategy-notes-row label {
    min-width: 0;
}
.strategy-notes-textarea.compact-horizontal-note,
.strategy-driver-card textarea.compact-horizontal-note,
.auto-stint-slot-card textarea.compact-horizontal-note {
    min-height: 84px;
    max-height: 140px;
    font-size: 12.5px;
    line-height: 1.35;
    padding: 9px 10px;
    resize: vertical;
    white-space: pre-wrap;
}
.strategy-driver-card .strategy-notes-row textarea {
    width: 100%;
}
.auto-stint-slot-card textarea.compact-horizontal-note {
    min-height: 64px;
}
@media (max-width: 980px) {
    .strategy-notes-row {
        grid-template-columns: 1fr;
    }
}


/* v3.1.7 Optional notes + fixed event car/class */
.planner-event-summary-grid div strong {
    overflow-wrap: anywhere;
}
.planner-optional-notes {
    margin-top: 12px;
    width: 100%;
}
.planner-note-toggle {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.planner-note-toggle-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: auto;
    cursor: pointer;
    border: 1px solid rgba(173,255,47,.25);
    background: rgba(173,255,47,.08);
    color: #dfffb0;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.planner-note-toggle-label::before {
    content: '+';
    display: inline-grid;
    place-items: center;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    background: rgba(173,255,47,.18);
}
.planner-note-toggle:checked + .planner-note-toggle-label::before {
    content: '–';
}
.planner-note-drawer {
    display: none;
    margin-top: 10px;
}
.planner-note-toggle:checked ~ .planner-note-drawer {
    display: grid;
}
.strategy-notes-row.planner-note-drawer {
    grid-template-columns: 1fr;
    gap: 8px;
}
.strategy-notes-textarea.compact-horizontal-note,
.strategy-driver-card textarea.compact-horizontal-note,
.auto-stint-slot-card textarea.compact-horizontal-note,
.single-line-note {
    min-height: 38px !important;
    max-height: 74px !important;
    font-size: 11.5px !important;
    line-height: 1.25 !important;
    padding: 7px 9px !important;
}
.final-plan-notes .planner-note-drawer {
    grid-template-columns: 1fr;
}
.final-plan-notes textarea.single-line-note {
    width: 100%;
}
.auto-stint-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
@media (min-width: 900px) {
    .strategy-notes-row.planner-note-drawer {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* v3.1.8 Application-style Stint Planner Wizard */
.kion-app-wizard {
    display: block;
}
.kion-wizard-progress {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 22px;
    padding: 12px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 22px;
    background: rgba(3, 8, 18, .72);
    box-shadow: 0 18px 50px rgba(0,0,0,.25);
    position: sticky;
    top: 86px;
    z-index: 20;
    backdrop-filter: blur(12px);
}
.kion-wizard-step {
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    background: rgba(255,255,255,.035);
    color: rgba(255,255,255,.72);
    padding: 12px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
    cursor: pointer;
    transition: .2s ease;
}
.kion-wizard-step span {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    display: inline-grid;
    place-items: center;
    background: rgba(255,255,255,.08);
    color: #fff;
    flex: 0 0 auto;
}
.kion-wizard-step.is-active {
    color: #061018;
    background: linear-gradient(135deg, #adff2f, #58d6ff);
    border-color: rgba(173,255,47,.85);
    box-shadow: 0 0 28px rgba(173,255,47,.18);
}
.kion-wizard-step.is-active span,
.kion-wizard-step.is-complete span {
    background: rgba(0,0,0,.28);
}
.kion-wizard-step.is-complete {
    border-color: rgba(173,255,47,.28);
    color: #dfffb0;
    background: rgba(173,255,47,.08);
}
.kion-wizard-panel {
    display: none;
    animation: kionWizardFade .22s ease-out;
}
.kion-wizard-panel.is-active {
    display: block;
}
@keyframes kionWizardFade {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}
.kion-wizard-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
    flex-wrap: wrap;
}
.kion-wizard-actions .button-secondary {
    border-color: rgba(255,255,255,.18);
}
.coverage-summary {
    margin-bottom: 14px;
    padding: 13px 15px;
    border-radius: 16px;
    font-weight: 900;
    letter-spacing: .02em;
    border: 1px solid rgba(255,255,255,.1);
}
.coverage-summary.success {
    color: #061018;
    background: linear-gradient(135deg, #adff2f, #58d6ff);
    border-color: rgba(173,255,47,.75);
}
.coverage-summary.warning {
    color: #fff5cc;
    background: rgba(255, 193, 7, .12);
    border-color: rgba(255, 193, 7, .38);
}
.coverage-summary.danger {
    color: #fff;
    background: rgba(255, 63, 86, .18);
    border-color: rgba(255, 63, 86, .68);
    box-shadow: 0 0 22px rgba(255,63,86,.14);
}
.coverage-summary.neutral {
    color: rgba(255,255,255,.76);
    background: rgba(255,255,255,.045);
}
.kion-app-wizard .planner-step-card {
    margin-bottom: 0;
}
@media (max-width: 900px) {
    .kion-wizard-progress {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        position: static;
    }
}
@media (max-width: 560px) {
    .kion-wizard-progress {
        grid-template-columns: 1fr;
    }
    .kion-wizard-step {
        justify-content: flex-start;
    }
    .kion-wizard-actions {
        justify-content: stretch;
    }
    .kion-wizard-actions .button {
        width: 100%;
        text-align: center;
        justify-content: center;
    }
}

/* Kion v3.1.9 hourly coverage indicators */
.hour-checkbox {
    position: relative;
    min-height: 72px;
}
.hour-checkbox .slot-coverage-indicator {
    position: absolute;
    top: 9px;
    right: 10px;
}
.slot-coverage-indicator {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 38px;
    height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .04em;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.86);
}
.slot-coverage-indicator.needs-driver {
    color: #ffdde4;
    border-color: rgba(255,55,85,.70);
    background: rgba(255,55,85,.18);
    box-shadow: 0 0 16px rgba(255,55,85,.14);
}
.slot-coverage-indicator.single-driver {
    color: #fff5d6;
    border-color: rgba(255,196,77,.65);
    background: rgba(255,196,77,.14);
}
.slot-coverage-indicator.covered {
    color: #d7ffe9;
    border-color: rgba(0,255,156,.55);
    background: rgba(0,255,156,.13);
    box-shadow: 0 0 16px rgba(0,255,156,.10);
}
.coverage-slot {
    position: relative;
    padding-right: 58px;
}
.coverage-slot > .slot-coverage-indicator {
    position: absolute;
    top: 10px;
    right: 10px;
}
.coverage-slot.single-covered {
    background: rgba(255,196,77,.10);
    border-color: rgba(255,196,77,.50);
    box-shadow: 0 0 18px rgba(255,196,77,.08);
}

/* Kion v3.1.11 radio stint assignment + visual timeline */
.stint-driver-radio-group {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 12px 0 14px;
    width: 100%;
}
.stint-driver-radio-card {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-width: 150px;
    max-width: 100%;
    padding: 10px 12px;
    border-radius: 999px;
    border: 1px solid rgba(79, 216, 255, 0.22);
    background: rgba(7, 13, 28, 0.82);
    color: rgba(255,255,255,0.84);
    cursor: pointer;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
    overflow: hidden;
}
.stint-driver-radio-card:hover {
    transform: translateY(-1px);
    border-color: rgba(173,255,47,0.58);
    box-shadow: 0 0 20px rgba(173,255,47,0.12);
}
.stint-driver-radio-card input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.stint-driver-radio-card .radio-dot {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.42);
    box-shadow: inset 0 0 0 4px rgba(5,10,22,0.95);
    flex: 0 0 auto;
}
.stint-driver-radio-card input:checked + .radio-dot {
    border-color: #adff2f;
    background: #adff2f;
    box-shadow: 0 0 14px rgba(173,255,47,0.45), inset 0 0 0 3px rgba(5,10,22,0.95);
}
.stint-driver-radio-card:has(input:checked) {
    border-color: rgba(173,255,47,0.92);
    background: linear-gradient(135deg, rgba(173,255,47,0.18), rgba(79,216,255,0.10));
    box-shadow: 0 0 26px rgba(173,255,47,0.14);
    color: #fff;
}
.radio-driver-name {
    font-weight: 800;
    font-size: 0.88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.final-stint-detail-grid {
    margin-top: 10px;
}
.stint-visual-plan {
    margin-top: 26px;
    padding: 18px;
    border-radius: 22px;
    border: 1px solid rgba(79,216,255,0.20);
    background: linear-gradient(180deg, rgba(7,13,28,0.78), rgba(3,6,14,0.82));
    box-shadow: 0 18px 50px rgba(0,0,0,0.22);
    overflow: hidden;
}
.compact-heading {
    margin-bottom: 10px;
}
.stint-timeline-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    margin: 16px 0 18px;
}
.stint-timeline-block {
    min-height: 92px;
    border-radius: 16px;
    padding: 12px;
    color: #061018;
    box-shadow: 0 10px 32px rgba(0,0,0,0.22), inset 0 0 0 1px rgba(255,255,255,0.24);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
}
.stint-timeline-block strong,
.stint-timeline-block span,
.stint-timeline-block em {
    display: block;
    position: relative;
    z-index: 1;
}
.stint-timeline-block strong {
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}
.stint-timeline-block span {
    font-weight: 900;
    font-size: 0.98rem;
}
.stint-timeline-block em {
    font-style: normal;
    font-weight: 900;
    font-size: 0.9rem;
}
.stint-timeline-block.is-unassigned {
    color: rgba(255,255,255,0.86);
    background: linear-gradient(135deg, rgba(255,63,86,0.70), rgba(30,12,20,0.94));
    box-shadow: 0 0 28px rgba(255,63,86,0.16);
}
.stint-timeline-table-wrap {
    width: 100%;
    overflow-x: auto;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,0.08);
}
.stint-timeline-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 0;
}
.stint-timeline-table th,
.stint-timeline-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid rgba(255,255,255,0.07);
    font-size: 0.88rem;
}
.stint-timeline-table th {
    color: rgba(255,255,255,0.62);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.72rem;
}
.driver-table-pill {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 5px 10px;
    color: #061018;
    font-weight: 900;
    background: rgba(255,255,255,0.12);
}
@media (max-width: 700px) {
    .stint-driver-radio-card { min-width: 100%; }
    .stint-timeline-grid { grid-template-columns: 1fr; }
    .stint-timeline-table th:nth-child(3),
    .stint-timeline-table td:nth-child(3),
    .stint-timeline-table th:nth-child(4),
    .stint-timeline-table td:nth-child(4),
    .stint-timeline-table th:nth-child(5),
    .stint-timeline-table td:nth-child(5) { display: none; }
}


/* Kion v3.1.12 compact final plan: show available drivers only */
.auto-stint-slot-list {
    gap: 10px;
}
.auto-stint-slot-card {
    padding: 12px;
    border-radius: 14px;
}
.auto-stint-slot-head {
    align-items: center;
    margin-bottom: 8px;
}
.auto-stint-slot-head strong {
    font-size: 0.96rem;
}
.auto-stint-slot-head span {
    font-size: 0.82rem;
}
.stint-coverage-badge {
    padding: 5px 8px;
    font-size: 0.68rem;
}
.stint-driver-radio-group.compact-available-only {
    gap: 6px;
    margin: 8px 0 8px;
}
.stint-driver-radio-card[style*="display:none"] {
    display: none !important;
}
.stint-driver-radio-card {
    min-width: 0;
    padding: 7px 10px;
    gap: 6px;
    border-radius: 999px;
}
.stint-driver-radio-card .radio-dot {
    width: 12px;
    height: 12px;
    border-width: 2px;
}
.radio-driver-name {
    font-size: 0.78rem;
}
.final-stint-detail-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(120px, 1fr));
    gap: 8px;
    margin-top: 6px;
}
.final-stint-detail-grid label {
    font-size: 0.72rem;
}
.final-stint-detail-grid input {
    min-height: 34px;
    padding: 7px 9px;
    font-size: 0.78rem;
}
.final-plan-notes {
    margin-top: 6px;
}
.final-plan-notes .planner-note-toggle-label {
    font-size: 0.74rem;
    padding: 5px 8px;
}
@media (max-width: 760px) {
    .auto-stint-slot-head {
        align-items: flex-start;
    }
    .final-stint-detail-grid {
        grid-template-columns: 1fr;
    }
}

/* v3.2 Strategy Engine */
.strategy-engine-summary {
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
  margin: 18px 0 22px;
}
.strategy-engine-summary > div {
  border: 1px solid rgba(173,255,47,.18);
  background: linear-gradient(135deg, rgba(0,255,156,.08), rgba(79,216,255,.06));
  border-radius: 14px;
  padding: 12px 14px;
}
.strategy-engine-summary span { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:rgba(255,255,255,.58); margin-bottom:4px; }
.strategy-engine-summary strong { color:#adff2f; font-size:18px; }
.auto-stint-slot-card .auto-stint-slot-head span { font-size: 12px; opacity:.82; }
@media (max-width: 900px) { .strategy-engine-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .strategy-engine-summary { grid-template-columns: 1fr; } }

/* v3.2.1 planner engineering controls */
.planner-inline-edit-field label {
    display: grid;
    gap: 6px;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.planner-inline-edit-field input,
.manual-stint-time-controls input {
    width: 100%;
    background: rgba(4, 10, 24, .84);
    border: 1px solid rgba(79, 216, 255, .28);
    color: #fff;
    border-radius: 12px;
    padding: 10px 12px;
}
.manual-stint-time-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(110px, 1fr));
    gap: 10px;
    margin: 10px 0 12px;
    padding: 10px;
    border: 1px solid rgba(173,255,47,.16);
    border-radius: 14px;
    background: rgba(3, 8, 18, .42);
}
.manual-stint-time-controls label {
    display: grid;
    gap: 5px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: rgba(255,255,255,.64);
}
.manual-stint-time-controls small {
    grid-column: 1 / -1;
    color: rgba(173,255,47,.76);
    font-size: 11px;
}
@media (max-width: 680px) {
    .manual-stint-time-controls { grid-template-columns: 1fr; }
}

/* v3.3.0 Driver registration / planner access */
.narrow-container{max-width:980px;margin:0 auto}.kion-driver-register-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#eaf3ff}.form-grid.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.kion-driver-register-form input{width:100%;box-sizing:border-box;border:1px solid rgba(0,255,156,.22);background:rgba(3,8,18,.8);color:#fff;border-radius:14px;padding:13px 14px;outline:none}.kion-driver-register-form input:focus{border-color:#00ff9c;box-shadow:0 0 0 3px rgba(0,255,156,.12)}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:22px}.notice-card.success-card{border-color:rgba(0,255,156,.45)}.notice-card.error-card{border-color:rgba(255,70,70,.55);background:rgba(90,0,0,.12)}.muted{opacity:.78}.login-required-card .button-secondary{margin-left:10px}@media(max-width:760px){.form-grid.two-col{grid-template-columns:1fr}.login-required-card .button-secondary{margin-left:0;margin-top:10px}}

/* v3.3.3 - Readable lime button fix */
.button-primary,
.kion-button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="button"].button-primary,
.primary-nav .button-primary,
.primary-nav a.button-primary,
.site-header .button-primary,
.site-header a.button-primary,
.login-required-card .button-primary,
.kion-driver-register-form .button-primary,
.kion-wizard-actions .button-primary,
.button-row .button-primary,
a.button.button-primary {
    color: #02060c !important;
    text-shadow: none !important;
}
.button-primary *,
.kion-button-primary *,
a.button.button-primary * {
    color: #02060c !important;
    text-shadow: none !important;
}
.button-primary:hover,
.kion-button-primary:hover,
a.button.button-primary:hover {
    color: #02060c !important;
}
.primary-nav .current-menu-item > a,
.primary-nav .current_page_item > a,
.primary-nav .current-menu-ancestor > a {
    color: var(--kion-lime) !important;
}
.primary-nav a.button-primary,
.primary-nav .current-menu-item > a.button-primary,
.primary-nav .current_page_item > a.button-primary {
    color: #02060c !important;
}

/* Kion v3.5 Garage61 Data Mapping */
.kion-sync-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    width: fit-content;
    margin: 8px 0 16px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(184,255,0,.14);
    color: #dfff5f;
    border: 1px solid rgba(184,255,0,.35);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}
.kion-sync-badge.muted,
.kion-synced-strategy-hint.muted {
    opacity: .75;
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.12);
    color: rgba(255,255,255,.72);
}
.kion-garage61-synced-panel {
    border: 1px solid rgba(184,255,0,.22);
    box-shadow: 0 0 35px rgba(0,180,255,.07), inset 0 0 28px rgba(184,255,0,.035);
}
.compact-stats strong { font-size: clamp(16px, 1.6vw, 22px); }
.kion-synced-strategy-hint {
    display: block;
    margin: 8px 0 12px;
    padding: 9px 11px;
    border-radius: 12px;
    border: 1px solid rgba(0,180,255,.22);
    background: rgba(0,180,255,.08);
    color: rgba(255,255,255,.84);
    font-size: 12px;
    line-height: 1.4;
}
.kion-synced-strategy-hint span {
    display: block;
    margin-bottom: 3px;
    color: #b8ff00;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

/* Kion v3.5.3 Garage61 data mapping UI */
.kion-g61-event-ref {
    border: 1px solid rgba(0,255,156,.22);
    background: linear-gradient(135deg, rgba(0,255,156,.08), rgba(35,120,255,.06));
    border-radius: 14px;
    padding: 12px;
    margin: 10px 0 14px;
}
.kion-g61-ref-head {
    display:flex;
    justify-content:space-between;
    gap:10px;
    align-items:center;
    margin-bottom:10px;
}
.kion-g61-ref-head span,
.kion-sync-badge {
    display:inline-flex;
    align-items:center;
    width:max-content;
    border:1px solid rgba(0,255,156,.35);
    background:rgba(0,255,156,.12);
    color:#9fffd2;
    border-radius:999px;
    padding:4px 9px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.kion-sync-badge.muted,
.kion-g61-ref-head small { color:rgba(255,255,255,.62); }
.kion-g61-ref-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
}
.kion-g61-ref-grid div {
    background:rgba(5,9,18,.58);
    border:1px solid rgba(255,255,255,.08);
    border-radius:10px;
    padding:8px;
}
.kion-g61-ref-grid small { display:block; color:rgba(255,255,255,.58); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.kion-g61-ref-grid strong { display:block; color:#fff; font-size:13px; margin-top:2px; }
.kion-g61-ref-context { display:block; margin-top:8px; color:rgba(255,255,255,.6); }
.kion-garage61-records-panel .kion-results-table-wrap { margin-top:14px; }
@media (max-width: 760px) { .kion-g61-ref-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }


/* Kion v3.7 Strategy Intelligence */
.kion-event-car-strip{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0;align-items:stretch}.kion-event-car-pill{display:flex;gap:10px;align-items:center;border:1px solid rgba(157,255,0,.22);background:rgba(5,10,20,.72);border-radius:16px;padding:8px 10px;box-shadow:0 0 20px rgba(0,180,255,.08)}.kion-event-car-img{width:74px;height:44px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(157,255,0,.16))}.kion-car-img-placeholder{width:74px;height:44px;display:grid;place-items:center;border:1px dashed rgba(255,255,255,.2);border-radius:10px;color:rgba(255,255,255,.55);font-size:11px}.kion-event-car-pill strong{display:block;font-size:12px;color:#fff}.kion-event-car-pill small{display:block;color:rgba(255,255,255,.64);font-size:11px}.kion-strategy-intel-panel{border:1px solid rgba(157,255,0,.22);background:linear-gradient(135deg,rgba(10,20,38,.92),rgba(2,6,14,.92));border-radius:22px;padding:18px;margin:18px 0 24px;box-shadow:0 0 40px rgba(0,180,255,.08)}.kion-strategy-context{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.kion-strategy-context>div{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}.kion-strategy-context span{display:block;color:rgba(255,255,255,.55);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.kion-strategy-context strong{display:block;color:#fff;margin-top:4px}.kion-strategy-intel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.kion-driver-intel-card{border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.22);border-radius:16px;padding:12px}.kion-driver-intel-card strong{display:block;color:#fff}.kion-driver-intel-card small{display:block;color:rgba(255,255,255,.55)}.kion-driver-intel-card ul{margin:10px 0 8px 18px;color:rgba(255,255,255,.78);font-size:12px}.kion-driver-intel-card p{color:rgba(255,255,255,.65);font-size:12px;margin:10px 0}.kion-admin-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:6px 16px}.planner-event-summary-grid .kion-event-car-strip{grid-column:1/-1}


/* Kion v3.8 Strategy AI Engine */
.kion-strategy-ai-recommendations{margin:18px 0;padding:18px;border:1px solid rgba(91,244,124,.25);border-radius:18px;background:linear-gradient(135deg,rgba(3,9,24,.92),rgba(6,30,50,.72));box-shadow:0 0 28px rgba(91,244,124,.08)}
.strategy-ai-rank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}
.strategy-ai-rank-card{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;padding:12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.04)}
.strategy-ai-rank-card ul{grid-column:1/-1;margin:6px 0 0 18px;padding:0;font-size:12px;line-height:1.45;color:rgba(255,255,255,.76)}
.rank-badge,.score-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:800;font-size:12px;white-space:nowrap}
.rank-badge{min-width:34px;height:34px;background:#5bf47c;color:#04120a;box-shadow:0 0 18px rgba(91,244,124,.25)}
.score-pill{padding:6px 9px;background:rgba(22,155,255,.18);border:1px solid rgba(22,155,255,.35);color:#d7f0ff}
.kion-event-car-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.kion-event-car-pill{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.kion-event-car-img{width:54px;height:34px;object-fit:contain}.kion-car-img-placeholder{width:54px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(91,244,124,.12);font-size:10px;color:#5bf47c}.kion-event-car-pill small{display:block;color:rgba(255,255,255,.62);font-size:11px}


/* v3.8.2 larger calendar/event car visuals */
.kion-event-car-strip{
  gap:18px !important;
}
.kion-event-car-pill{
  padding:16px 18px !important;
  border-radius:20px !important;
}
.kion-event-car-img{
  width:160px !important;
  height:90px !important;
  object-fit:contain !important;
}
.kion-car-img-placeholder{
  width:160px !important;
  height:90px !important;
}
.kion-event-car-pill strong{
  font-size:16px !important;
  margin-top:6px;
}


/* Kion v3.8.3 definitive calendar car visual fix
   Forces large car presentation and removes metadata everywhere the event car strip is used. */
.kion-event-car-strip,
.kion-event-car-strip.kion-large-car-strip {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    gap: 22px !important;
    align-items: stretch !important;
    margin: 18px 0 22px !important;
    width: 100% !important;
}
.kion-event-car-pill,
.kion-event-car-pill.kion-large-car-pill {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    min-height: 230px !important;
    padding: 18px 22px !important;
    border-radius: 24px !important;
    background: radial-gradient(circle at 50% 18%, rgba(0, 255, 156, .10), rgba(5, 10, 20, .82) 54%, rgba(0, 0, 0, .42)) !important;
    border: 1px solid rgba(157, 255, 0, .24) !important;
    box-shadow: 0 0 34px rgba(0, 180, 255, .10), inset 0 0 30px rgba(255,255,255,.025) !important;
    text-align: center !important;
}
.kion-event-car-img,
.kion-event-car-img.kion-large-car-img,
.kion-event-car-pill img {
    width: min(100%, 360px) !important;
    height: 170px !important;
    max-width: 360px !important;
    max-height: 170px !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 0 22px rgba(157,255,0,.18)) drop-shadow(0 0 32px rgba(0,180,255,.13)) !important;
}
.kion-car-img-placeholder,
.kion-large-car-placeholder {
    width: min(100%, 360px) !important;
    height: 170px !important;
    max-width: 360px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px dashed rgba(157,255,0,.28) !important;
    border-radius: 18px !important;
    background: rgba(91,244,124,.08) !important;
    color: rgba(157,255,0,.72) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
}
.kion-event-car-title,
.kion-event-car-pill > div {
    width: 100% !important;
}
.kion-event-car-pill strong,
.kion-event-car-title strong {
    display: block !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    color: #fff !important;
    margin: 0 !important;
}
.kion-event-car-pill small,
.kion-event-car-pill .car-meta,
.kion-event-car-pill .car-class,
.kion-event-car-pill .car-fuel,
.kion-event-car-pill .car-details,
.kion-event-car-strip small {
    display: none !important;
}
@media (max-width: 760px) {
    .kion-event-car-strip,
    .kion-event-car-strip.kion-large-car-strip {
        grid-template-columns: 1fr !important;
    }
    .kion-event-car-pill,
    .kion-event-car-pill.kion-large-car-pill {
        min-height: 200px !important;
    }
    .kion-event-car-img,
    .kion-event-car-img.kion-large-car-img,
    .kion-event-car-pill img,
    .kion-car-img-placeholder,
    .kion-large-car-placeholder {
        height: 145px !important;
        max-height: 145px !important;
    }
}

/* v3.8.4 Calendar car placement: only show car visuals in the large next-event highlight */
.next-race-card .next-race-car-visuals {
    margin: 20px 0 10px;
}
.next-race-card .next-race-car-visuals .kion-event-car-strip,
.next-race-card .next-race-car-visuals .kion-event-car-strip.kion-large-car-strip {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 18px;
    flex-wrap: wrap;
    margin: 0;
}
.next-race-card .next-race-car-visuals .kion-event-car-pill,
.next-race-card .next-race-car-visuals .kion-large-car-pill {
    min-width: 240px;
    max-width: 360px;
    flex: 1 1 260px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 16px 18px 14px;
    border-radius: 22px;
    background: rgba(2, 8, 18, .68);
    border: 1px solid rgba(157,255,0,.28);
    box-shadow: 0 0 34px rgba(0,180,255,.10), inset 0 0 24px rgba(157,255,0,.04);
}
.next-race-card .next-race-car-visuals .kion-event-car-img,
.next-race-card .next-race-car-visuals .kion-large-car-img {
    width: min(100%, 320px) !important;
    height: 170px !important;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    filter: drop-shadow(0 0 18px rgba(157,255,0,.22));
}
.next-race-card .next-race-car-visuals .kion-car-img-placeholder,
.next-race-card .next-race-car-visuals .kion-large-car-placeholder {
    width: min(100%, 320px) !important;
    height: 170px !important;
    display: grid;
    place-items: center;
}
.next-race-card .next-race-car-visuals .kion-event-car-title {
    margin-top: 10px;
    text-align: center;
}
.next-race-card .next-race-car-visuals .kion-event-car-title strong {
    font-size: 16px;
    line-height: 1.25;
    color: #fff;
}
.pro-calendar-grid .kion-event-car-strip,
.calendar-event-card .kion-event-car-strip {
    display: none !important;
}
@media (max-width: 720px) {
    .next-race-card .next-race-car-visuals .kion-event-car-pill,
    .next-race-card .next-race-car-visuals .kion-large-car-pill {
        min-width: 0;
        flex-basis: 100%;
    }
    .next-race-card .next-race-car-visuals .kion-event-car-img,
    .next-race-card .next-race-car-visuals .kion-large-car-img,
    .next-race-card .next-race-car-visuals .kion-car-img-placeholder,
    .next-race-card .next-race-car-visuals .kion-large-car-placeholder {
        height: 130px !important;
    }
}


/* v3.8.5 Driver directory/profile visual + metadata fix */
.driver-directory-card > img,
.driver-card > img.wp-post-image {
  width: 100%;
  height: 260px;
  object-fit: contain !important;
  object-position: center center;
  background: radial-gradient(circle at 50% 20%, rgba(183,255,42,.10), transparent 16rem), rgba(2,6,12,.44);
  border: 1px solid rgba(183,255,42,.14);
  padding: 8px;
}
.driver-profile-card > img,
.driver-profile-card img.wp-post-image {
  width: 100%;
  max-height: 520px;
  object-fit: contain !important;
  object-position: center center;
  background: radial-gradient(circle at 50% 15%, rgba(26,167,255,.12), transparent 18rem), rgba(2,6,12,.52);
  border: 1px solid rgba(183,255,42,.14);
  padding: 10px;
}
.driver-directory-card .driver-profile-summary,
.driver-profile-card .driver-profile-summary {
  color: rgba(244,248,255,.86);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 720px) {
  .driver-directory-card > img,
  .driver-card > img.wp-post-image { height: 220px; }
  .driver-profile-card > img,
  .driver-profile-card img.wp-post-image { max-height: 420px; }
}

/* v3.8.6 Driver page layout unification
   Uses the same Kion card/grid language as Calendar and Stint Planner. */
.drivers-directory-section {
    position: relative;
}
.kion-unified-driver-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 22px;
    align-items: stretch;
}
.kion-driver-directory-card {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.kion-driver-card-media {
    display: grid;
    place-items: center;
    min-height: 310px;
    padding: 16px;
    margin: 0;
    text-decoration: none;
    background:
        radial-gradient(circle at 50% 18%, rgba(183,255,42,.14), transparent 17rem),
        radial-gradient(circle at 72% 35%, rgba(26,167,255,.12), transparent 16rem),
        rgba(2, 6, 12, .54);
    border-bottom: 1px solid rgba(183,255,42,.14);
}
.kion-driver-card-image,
.kion-driver-card-media img,
.kion-driver-directory-card img.wp-post-image {
    width: 100% !important;
    max-width: 340px !important;
    height: 280px !important;
    max-height: 280px !important;
    object-fit: contain !important;
    object-position: center center !important;
    display: block;
    margin: 0 auto;
    border-radius: 20px;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
}
.kion-driver-card-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}
.kion-driver-card-body h3 a {
    color: var(--kion-text, #f4f8ff);
    text-decoration: none;
}
.kion-driver-card-body h3 a:hover {
    color: var(--kion-lime, #b6ff00);
}
.kion-driver-summary {
    color: rgba(244,248,255,.86);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.45;
    margin: 0;
}
.kion-driver-meta-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.kion-driver-meta-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.045);
    color: rgba(244,248,255,.78);
    font-size: 12px;
    font-weight: 800;
}
.kion-driver-card-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: auto;
}
.kion-driver-card-stats > div {
    padding: 12px;
    border-radius: 16px;
    border: 1px solid rgba(183,255,42,.16);
    background: rgba(0,0,0,.20);
}
.kion-driver-card-stats small {
    display: block;
    color: rgba(244,248,255,.62);
    font-size: 10px;
    line-height: 1.35;
    text-transform: uppercase;
    letter-spacing: .06em;
}
.kion-driver-card-stats strong {
    display: block;
    color: #fff;
    margin-top: 6px;
    font-size: 18px;
}
.kion-driver-actions {
    margin-top: 6px;
}
/* Override older driver image rules only inside the unified page. */
.kion-unified-driver-grid .driver-directory-card > img,
.kion-unified-driver-grid .driver-card > img.wp-post-image {
    height: auto !important;
    object-fit: contain !important;
}
@media (max-width: 760px) {
    .kion-unified-driver-grid {
        grid-template-columns: 1fr;
    }
    .kion-driver-card-media {
        min-height: 250px;
    }
    .kion-driver-card-image,
    .kion-driver-card-media img,
    .kion-driver-directory-card img.wp-post-image {
        height: 230px !important;
        max-height: 230px !important;
    }
    .kion-driver-card-stats {
        grid-template-columns: 1fr;
    }
}


/* v3.8.7 Drivers page route/layout hard reset
   Prevent old page-builder/featured-image hero styling from leaking into /drivers/. */
body.post-type-archive-kion_driver .drivers-page-hero,
body.page-template-page-drivers .drivers-page-hero,
body.page-id .drivers-page-hero {
  min-height: auto !important;
  background:
    linear-gradient(115deg, rgba(2,6,12,.96) 0%, rgba(4,10,19,.94) 42%, rgba(8,26,49,.82) 100%),
    radial-gradient(circle at 12% 18%, rgba(26,167,255,.18), transparent 24rem),
    radial-gradient(circle at 82% 8%, rgba(183,255,42,.12), transparent 22rem) !important;
  background-image:
    linear-gradient(115deg, rgba(2,6,12,.96) 0%, rgba(4,10,19,.94) 42%, rgba(8,26,49,.82) 100%),
    radial-gradient(circle at 12% 18%, rgba(26,167,255,.18), transparent 24rem),
    radial-gradient(circle at 82% 8%, rgba(183,255,42,.12), transparent 22rem) !important;
}
body.post-type-archive-kion_driver .drivers-page-hero img,
body.page-template-page-drivers .drivers-page-hero img {
  display: initial;
}
body.post-type-archive-kion_driver .kion-unified-driver-grid,
body.page-template-page-drivers .kion-unified-driver-grid {
  width: 100%;
}


/* v3.8.9 Drivers page template conflict guard */
body.kion-drivers-directory .wp-block-cover,
body.kion-drivers-directory .entry-header,
body.kion-drivers-directory .page-hero,
body.kion-drivers-directory .wp-block-template-part {
    display: none !important;
}

/* v3.9.1 Home/Partners route consistency */
.kion-page-hero {
  min-height: auto;
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(48px, 7vw, 92px);
}
.kion-partner-directory-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 22px;
}
.kion-partner-directory-card {
  min-height: 190px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.kion-partner-directory-card a {
  color: inherit;
  text-decoration: none;
  display: block;
  width: 100%;
}
.kion-partner-directory-card .partner-logo-wrap {
  min-height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
}
.kion-partner-directory-card img {
  max-width: min(220px, 90%);
  max-height: 86px;
  object-fit: contain;
}


/* v3.9.9 Partner page lime heading with Kion light-blue accent line */
.kion-partner-single-page .partner-about-heading,
.kion-partner-single-page .page-content > h2:first-child {
    color: var(--kion-lime, #b7ff2a) !important;
    text-shadow: 0 0 18px rgba(183, 255, 42, 0.22);
    border-left: 4px solid var(--kion-light-blue, #53c5ff);
    padding-left: 14px;
    margin-bottom: 18px;
    box-shadow: inset 4px 0 0 rgba(83, 197, 255, 0.12);
}

/* v3.9.11: Full-width sponsor bar viewport fix */
.sponsor-bar,
body .sponsor-bar {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  left: 0 !important;
  right: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.sponsor-bar .sponsor-track,
body .sponsor-bar .sponsor-track {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 56px !important;
  min-width: max-content !important;
  padding-left: 0 !important;
  padding-right: 56px !important;
  margin-left: 0 !important;
  transform-origin: left center !important;
}

.sponsor-bar .sponsor-entry,
body .sponsor-bar .sponsor-entry {
  flex: 0 0 auto !important;
}

.sponsor-bar .sponsor-logo-img {
  max-height: 34px !important;
  max-width: 180px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

@media (max-width: 820px) {
  .sponsor-bar,
  body .sponsor-bar {
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }
  .sponsor-bar .sponsor-track {
    gap: 34px !important;
    padding-right: 34px !important;
  }
}


/* v3.9.12: Sponsor bar logo no-crop fix
   Partner logos must render as full transparent PNG/SVG style assets, not as circular/oval cropped thumbnails. */
.sponsor-bar,
body .sponsor-bar {
  overflow: hidden !important;
}

.sponsor-bar .sponsor-track,
body .sponsor-bar .sponsor-track {
  overflow: visible !important;
  align-items: center !important;
}

.sponsor-bar .sponsor-entry,
body .sponsor-bar .sponsor-entry,
.sponsor-bar .sponsor-entry a,
body .sponsor-bar .sponsor-entry a {
  overflow: visible !important;
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  background: transparent !important;
  padding: 0 !important;
}

.sponsor-bar .sponsor-logo-img,
body .sponsor-bar .sponsor-logo-img,
.sponsor-entry img.sponsor-logo-img,
.sponsor-entry a img.sponsor-logo-img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-height: 44px !important;
  max-width: 220px !important;
  object-fit: contain !important;
  object-position: center center !important;
  overflow: visible !important;
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.sponsor-bar img,
body .sponsor-bar img {
  border-radius: 0 !important;
  clip-path: none !important;
  object-fit: contain !important;
}

@media (max-width: 820px) {
  .sponsor-bar .sponsor-logo-img,
  body .sponsor-bar .sponsor-logo-img {
    max-height: 36px !important;
    max-width: 170px !important;
  }
}


/* v3.9.13: Sponsor bar logo scale balance - theme-level fix
   Slightly smaller than v3.9.12 while preserving full transparent logo visibility. */
.sponsor-bar .sponsor-logo-img,
body .sponsor-bar .sponsor-logo-img,
.sponsor-bar .sponsor-entry img,
body .sponsor-bar .sponsor-entry img,
.sponsor-entry img.sponsor-logo-img,
.sponsor-entry a img.sponsor-logo-img {
  height: 38px !important;
  max-height: 38px !important;
  width: auto !important;
  max-width: 190px !important;
  object-fit: contain !important;
  object-position: center center !important;
  overflow: visible !important;
  border-radius: 0 !important;
  clip-path: none !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  background: transparent !important;
  padding: 0 8px !important;
}

.sponsor-bar .sponsor-track,
body .sponsor-bar .sponsor-track {
  min-height: 52px !important;
  gap: 32px !important;
}

@media (max-width: 820px) {
  .sponsor-bar .sponsor-logo-img,
  body .sponsor-bar .sponsor-logo-img,
  .sponsor-bar .sponsor-entry img,
  body .sponsor-bar .sponsor-entry img {
    height: 32px !important;
    max-height: 32px !important;
    max-width: 150px !important;
  }
  .sponsor-bar .sponsor-track,
  body .sponsor-bar .sponsor-track {
    min-height: 44px !important;
    gap: 24px !important;
  }
}


/* =========================================================
   v3.9.19 Frontpage driver section hotfix
   Compact role-focused cards only; full stats stay on profiles.
========================================================= */
.kion-frontpage-driver-group {
  margin-top: 36px;
}

.kion-frontpage-driver-group:first-of-type {
  margin-top: 0;
}

.kion-frontpage-driver-group-title {
  margin: 0 0 18px;
  color: var(--kion-lime);
  font-size: 24px;
  letter-spacing: -.02em;
}

.kion-frontpage-driver-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 18px;
}

.kion-frontpage-driver-card {
  border-radius: 22px;
  border: 1px solid rgba(183,255,42,.14);
  background: linear-gradient(180deg, rgba(8,26,49,.86), rgba(7,16,29,.94));
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.kion-frontpage-driver-card:hover {
  transform: translateY(-3px);
  border-color: rgba(183,255,42,.36);
  box-shadow: 0 16px 36px rgba(0,0,0,.28);
}

.kion-frontpage-driver-link {
  display: flex;
  min-height: 214px;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 18px 14px;
  text-align: center;
  color: inherit;
}

.kion-frontpage-driver-photo img,
.kion-frontpage-driver-photo .driver-avatar-placeholder {
  width: 88px;
  height: 88px;
  min-height: 88px;
  border-radius: 50%;
  object-fit: cover;
}

.kion-frontpage-driver-photo img {
  border: 2px solid rgba(183,255,42,.22);
}

.kion-frontpage-driver-photo .driver-avatar-placeholder {
  font-size: 24px;
  letter-spacing: -.06em;
}

.kion-frontpage-driver-card h3 {
  margin: 4px 0 0;
  font-size: 16px;
  line-height: 1.25;
}

.kion-frontpage-role-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}

.kion-frontpage-role-badges span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(26,167,255,.12);
  border: 1px solid rgba(26,167,255,.22);
  color: #d8f3ff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* =========================================================
   v3.9.21 Frontpage compact driver cards + Kion role frames
   Keeps existing frontpage structure intact.
========================================================= */

.kion-frontpage-driver-grid {
  grid-template-columns: repeat(auto-fit, minmax(92px, 1fr));
  gap: 10px;
}

.kion-frontpage-driver-card {
  border-radius: 16px;
  border-color: rgba(183,255,42,.20);
}

.kion-frontpage-driver-link {
  min-height: 108px;
  gap: 5px;
  padding: 9px 7px;
}

.kion-frontpage-driver-photo img,
.kion-frontpage-driver-photo .driver-avatar-placeholder {
  width: 44px;
  height: 44px;
  min-height: 44px;
  border-radius: 50%;
}

.kion-frontpage-driver-photo img {
  border: 1px solid rgba(183,255,42,.48);
  box-shadow: 0 0 14px rgba(183,255,42,.12);
}

.kion-frontpage-driver-photo .driver-avatar-placeholder {
  font-size: 13px;
}

.kion-frontpage-driver-card h3 {
  margin: 2px 0 0;
  font-size: 12px;
  line-height: 1.18;
}

.kion-frontpage-role-badges {
  gap: 4px;
  margin-top: 1px;
}

.kion-frontpage-role-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 18px;
  padding: 3px 6px;
  border-radius: 999px;
  border: 1px solid rgba(183,255,42,.62);
  background: linear-gradient(180deg, rgba(183,255,42,.10), rgba(26,167,255,.08));
  color: #eaffc2;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 12px rgba(183,255,42,.08);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .035em;
  text-transform: uppercase;
  white-space: nowrap;
}

@media (max-width: 720px) {
  .kion-frontpage-driver-grid {
    grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
  }

  .kion-frontpage-driver-link {
    min-height: 102px;
  }
}

/* =========================================================
   v3.9.22 Frontpage driver image size correction
   Keeps compact cards and Kion role frames, restores avatar presence.
========================================================= */

.kion-frontpage-driver-grid {
  grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
  gap: 14px;
}

.kion-frontpage-driver-link {
  min-height: 168px;
  gap: 8px;
  padding: 14px 10px;
}

.kion-frontpage-driver-photo img,
.kion-frontpage-driver-photo .driver-avatar-placeholder {
  width: 76px;
  height: 76px;
  min-height: 76px;
  border-radius: 50%;
}

.kion-frontpage-driver-photo img {
  border: 2px solid rgba(183,255,42,.48);
  box-shadow: 0 0 18px rgba(183,255,42,.14);
}

.kion-frontpage-driver-photo .driver-avatar-placeholder {
  font-size: 20px;
}

.kion-frontpage-driver-card h3 {
  margin: 4px 0 0;
  font-size: 14px;
  line-height: 1.22;
}

.kion-frontpage-role-badges {
  gap: 5px;
  margin-top: 2px;
}

.kion-frontpage-role-badges span {
  min-height: 20px;
  padding: 4px 7px;
  font-size: 9px;
}

@media (max-width: 720px) {
  .kion-frontpage-driver-grid {
    grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
  }

  .kion-frontpage-driver-link {
    min-height: 154px;
  }

  .kion-frontpage-driver-photo img,
  .kion-frontpage-driver-photo .driver-avatar-placeholder {
    width: 68px;
    height: 68px;
    min-height: 68px;
  }
}


/* =========================================================
   v3.9.23 Frontpage driver card visibility correction
   Hard override + cache-busted asset version.
========================================================= */

.kion-frontpage-driver-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
  gap: 22px !important;
}

.kion-frontpage-driver-card {
  border-radius: 24px !important;
  border: 1px solid rgba(183,255,42,.26) !important;
  background: linear-gradient(180deg, rgba(8,26,49,.90), rgba(7,16,29,.96)) !important;
}

.kion-frontpage-driver-link {
  min-height: 270px !important;
  gap: 12px !important;
  padding: 24px 18px !important;
}

.kion-frontpage-driver-photo img,
.kion-frontpage-driver-photo .driver-avatar-placeholder {
  width: 140px !important;
  height: 140px !important;
  min-height: 140px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

.kion-frontpage-driver-photo img {
  border: 3px solid rgba(183,255,42,.55) !important;
  box-shadow: 0 0 24px rgba(183,255,42,.18) !important;
}

.kion-frontpage-driver-photo .driver-avatar-placeholder {
  font-size: 30px !important;
}

.kion-frontpage-driver-card h3 {
  margin: 6px 0 0 !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
}

.kion-frontpage-role-badges {
  gap: 7px !important;
  margin-top: 3px !important;
}

.kion-frontpage-role-badges span {
  min-height: 25px !important;
  padding: 6px 10px !important;
  border: 1px solid rgba(183,255,42,.72) !important;
  background: linear-gradient(180deg, rgba(183,255,42,.12), rgba(26,167,255,.09)) !important;
  color: #eaffc2 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 14px rgba(183,255,42,.10) !important;
}

@media (max-width: 720px) {
  .kion-frontpage-driver-grid {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
    gap: 16px !important;
  }

  .kion-frontpage-driver-link {
    min-height: 220px !important;
    padding: 18px 12px !important;
  }

  .kion-frontpage-driver-photo img,
  .kion-frontpage-driver-photo .driver-avatar-placeholder {
    width: 110px !important;
    height: 110px !important;
    min-height: 110px !important;
  }
}


/* =========================================================
   v3.9.24 Square Driver Images
========================================================= */

.kion-home-driver-avatar img,
.kion-home-driver-avatar .driver-avatar-placeholder {
    border-radius: 18px !important;
    width: 140px !important;
    height: 140px !important;
    object-fit: cover !important;
    border: 2px solid rgba(183,255,42,.45) !important;
    box-shadow: 0 0 18px rgba(183,255,42,.18);
}


/* =========================================================
   v3.9.25 Frontpage Square Driver Photo Override
   Correct selector for the actual frontpage driver cards.
========================================================= */

.home .kion-frontpage-driver-photo img,
.front-page .kion-frontpage-driver-photo img,
.kion-frontpage-driver-card .kion-frontpage-driver-photo img,
.kion-frontpage-driver-photo img {
  width: 140px !important;
  height: 140px !important;
  min-width: 140px !important;
  min-height: 140px !important;
  max-width: 140px !important;
  max-height: 140px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 18px !important;
  object-fit: cover !important;
  overflow: hidden !important;
  border: 3px solid rgba(183,255,42,.55) !important;
  box-shadow: 0 0 24px rgba(183,255,42,.18) !important;
}

.home .kion-frontpage-driver-photo .driver-avatar-placeholder,
.front-page .kion-frontpage-driver-photo .driver-avatar-placeholder,
.kion-frontpage-driver-card .kion-frontpage-driver-photo .driver-avatar-placeholder,
.kion-frontpage-driver-photo .driver-avatar-placeholder {
  width: 140px !important;
  height: 140px !important;
  min-width: 140px !important;
  min-height: 140px !important;
  max-width: 140px !important;
  max-height: 140px !important;
  border-radius: 18px !important;
}

@media (max-width: 720px) {
  .home .kion-frontpage-driver-photo img,
  .front-page .kion-frontpage-driver-photo img,
  .kion-frontpage-driver-card .kion-frontpage-driver-photo img,
  .kion-frontpage-driver-photo img,
  .home .kion-frontpage-driver-photo .driver-avatar-placeholder,
  .front-page .kion-frontpage-driver-photo .driver-avatar-placeholder,
  .kion-frontpage-driver-card .kion-frontpage-driver-photo .driver-avatar-placeholder,
  .kion-frontpage-driver-photo .driver-avatar-placeholder {
    width: 110px !important;
    height: 110px !important;
    min-width: 110px !important;
    min-height: 110px !important;
    max-width: 110px !important;
    max-height: 110px !important;
    border-radius: 16px !important;
  }
}


/* =========================================================
   v3.9.27 Lion Driver Placeholder
========================================================= */

.kion-lion-placeholder {
    width: 140px;
    height: 140px;
    border-radius: 18px;
    border: 3px solid rgba(183,255,42,.55);
    background:
        linear-gradient(rgba(5,12,22,.55), rgba(5,12,22,.72)),
        url('../images/kion-lion-bg.png') center center / cover no-repeat;
    box-shadow: 0 0 24px rgba(183,255,42,.18);
}


/* =========================================================
   v3.9.28 Lion Placeholder Real Image Fix
   Uses the existing Kion lion asset as an actual image instead of
   a fragile CSS background file.
========================================================= */

.kion-frontpage-driver-photo .kion-lion-placeholder,
.home .kion-frontpage-driver-photo .kion-lion-placeholder,
.front-page .kion-frontpage-driver-photo .kion-lion-placeholder,
.kion-frontpage-driver-card .kion-frontpage-driver-photo .kion-lion-placeholder {
    width: 140px !important;
    height: 140px !important;
    min-width: 140px !important;
    min-height: 140px !important;
    max-width: 140px !important;
    max-height: 140px !important;
    border-radius: 18px !important;
    border: 3px solid rgba(183,255,42,.55) !important;
    background: radial-gradient(circle at center, rgba(26,167,255,.18), rgba(5,12,22,.92) 68%) !important;
    box-shadow: 0 0 24px rgba(183,255,42,.18) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    padding: 14px !important;
    color: transparent !important;
    font-size: 0 !important;
}

.kion-frontpage-driver-photo .kion-lion-placeholder img.kion-lion-placeholder-img,
.home .kion-frontpage-driver-photo .kion-lion-placeholder img.kion-lion-placeholder-img,
.front-page .kion-frontpage-driver-photo .kion-lion-placeholder img.kion-lion-placeholder-img,
.kion-frontpage-driver-card .kion-frontpage-driver-photo .kion-lion-placeholder img.kion-lion-placeholder-img {
    width: 86% !important;
    height: 86% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 86% !important;
    max-height: 86% !important;
    border: 0 !important;
    border-radius: 0 !important;
    object-fit: contain !important;
    box-shadow: none !important;
    display: block !important;
}

@media (max-width: 720px) {
    .kion-frontpage-driver-photo .kion-lion-placeholder,
    .home .kion-frontpage-driver-photo .kion-lion-placeholder,
    .front-page .kion-frontpage-driver-photo .kion-lion-placeholder,
    .kion-frontpage-driver-card .kion-frontpage-driver-photo .kion-lion-placeholder {
        width: 110px !important;
        height: 110px !important;
        min-width: 110px !important;
        min-height: 110px !important;
        max-width: 110px !important;
        max-height: 110px !important;
        border-radius: 16px !important;
        padding: 11px !important;
    }
}


/* =========================================================
   v3.9.29 Driver Profile Lion Placeholder
========================================================= */

.driver-profile-card .kion-lion-profile-placeholder {
    width: 100%;
    max-width: 360px;
    aspect-ratio: 1 / 1;
    margin: 0 auto 20px;
    border-radius: 24px;
    border: 3px solid rgba(183,255,42,.55);
    background: radial-gradient(circle at center, rgba(26,167,255,.18), rgba(5,12,22,.92) 68%);
    box-shadow: 0 0 32px rgba(183,255,42,.16), inset 0 0 28px rgba(26,167,255,.08);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.driver-profile-card .kion-lion-profile-placeholder .kion-lion-placeholder-img {
    width: 76%;
    height: 76%;
    object-fit: contain;
    opacity: .92;
    filter: drop-shadow(0 0 18px rgba(26,167,255,.26));
}


/* =========================================================
   v3.9.32 Driver Profile iRacing Class Tabs
========================================================= */

.kion-license-tabs {
  margin: 24px 0 28px;
}

.kion-license-tab-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.kion-license-tab-button {
  appearance: none;
  border: 1px solid rgba(183,255,42,.28);
  background: linear-gradient(180deg, rgba(8,26,49,.92), rgba(7,16,29,.96));
  color: #d8f3ff;
  border-radius: 999px;
  padding: 10px 15px;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease;
}

.kion-license-tab-button:hover,
.kion-license-tab-button.is-active {
  color: var(--kion-lime);
  border-color: rgba(183,255,42,.78);
  box-shadow: 0 0 22px rgba(183,255,42,.14);
  transform: translateY(-1px);
}

.kion-license-tab-panel {
  display: none;
}

.kion-license-tab-panel.is-active {
  display: block;
}

.kion-license-tab-panel .driver-stats-large {
  border: 1px solid rgba(183,255,42,.14);
  border-radius: 22px;
  padding: 18px;
  background: radial-gradient(circle at top left, rgba(26,167,255,.10), rgba(4,10,18,.68) 58%);
}

@media (max-width: 720px) {
  .kion-license-tab-buttons {
    display: grid;
    grid-template-columns: 1fr;
  }

  .kion-license-tab-button {
    width: 100%;
  }
}


/* =========================================================
   v3.9.36 Driver Profile Sync Debug
========================================================= */

.kion-profile-sync-debug {
  margin: 14px 0 22px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px dashed rgba(183,255,42,.38);
  background: rgba(183,255,42,.06);
  color: #d8f3ff;
  font-size: 13px;
}


/* =========================================================
   v3.10.0 Garage61 Lap Intelligence Core
========================================================= */

.kion-lap-intelligence-card {
  border: 1px solid rgba(183,255,42,.18);
  border-radius: 18px;
  background: radial-gradient(circle at top left, rgba(26,167,255,.08), rgba(4,10,18,.86) 62%);
  padding: 18px;
}


/* =========================================================
   v3.10.2 Garage61 Synced Statistics Records
========================================================= */

.kion-g61-activity-panel .driver-stats-large {
  margin-top: 14px;
}

.kion-g61-activity-lists {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.kion-g61-activity-lists h4 {
  margin: 0 0 10px;
  color: var(--kion-lime);
}

.kion-g61-activity-lists ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.kion-g61-activity-lists li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 11px;
  border-radius: 12px;
  border: 1px solid rgba(183,255,42,.16);
  background: rgba(5,12,22,.58);
}

.kion-g61-activity-meta {
  margin: 16px 0 0;
  color: #94a3b8;
  font-size: 13px;
}

@media (max-width: 780px) {
  .kion-g61-activity-lists {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   v3.10.16 Compact Driver Class Stats
========================================================= */

.kion-license-tab-panel {
  position: relative;
}

.kion-class-updated-badge {
  position: absolute;
  top: 12px;
  right: 14px;
  z-index: 2;
  font-size: 11px;
  line-height: 1;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(216, 243, 255, .70);
  border: 1px solid rgba(183,255,42,.20);
  background: rgba(5,12,22,.76);
  border-radius: 999px;
  padding: 7px 9px;
}

.kion-license-tab-panel .driver-stats-large {
  padding-top: 38px;
}

@media (max-width: 720px) {
  .kion-class-updated-badge {
    position: static;
    display: inline-flex;
    margin: 0 0 10px;
  }

  .kion-license-tab-panel .driver-stats-large {
    padding-top: 18px;
  }
}


/* =========================================================
   v3.10.20 Compact Homepage Hero
========================================================= */

.home .hero-section,
.home .kion-hero,
.front-page .hero-section,
.front-page .kion-hero {
  min-height: auto !important;
  padding-top: clamp(42px, 5vw, 78px) !important;
  padding-bottom: clamp(32px, 4vw, 58px) !important;
}

.home .hero-grid,
.home .kion-hero-grid,
.front-page .hero-grid,
.front-page .kion-hero-grid {
  gap: clamp(28px, 4vw, 64px) !important;
  align-items: center !important;
}

.home .hero-title,
.home .kion-hero-title,
.front-page .hero-title,
.front-page .kion-hero-title {
  font-size: clamp(52px, 6.2vw, 92px) !important;
  line-height: .98 !important;
  letter-spacing: -0.06em !important;
  max-width: 820px !important;
  margin-bottom: 20px !important;
}

.home .hero-copy,
.home .kion-hero-copy,
.front-page .hero-copy,
.front-page .kion-hero-copy {
  font-size: clamp(17px, 1.55vw, 23px) !important;
  line-height: 1.48 !important;
  max-width: 840px !important;
  margin-bottom: 26px !important;
}

.home .hero-eyebrow,
.home .kion-hero-eyebrow,
.front-page .hero-eyebrow,
.front-page .kion-hero-eyebrow {
  margin-bottom: 22px !important;
}

.home .hero-actions,
.home .kion-hero-actions,
.front-page .hero-actions,
.front-page .kion-hero-actions {
  gap: 14px !important;
}

.home .hero-card,
.home .kion-hero-card,
.home .hero-stat-card,
.home .kion-hero-stat-card,
.front-page .hero-card,
.front-page .kion-hero-card,
.front-page .hero-stat-card,
.front-page .kion-hero-stat-card {
  min-height: 108px !important;
  padding: 24px 30px !important;
  border-radius: 24px !important;
}

.home .hero-card small,
.home .kion-hero-card small,
.home .hero-stat-card small,
.home .kion-hero-stat-card small,
.front-page .hero-card small,
.front-page .kion-hero-card small,
.front-page .hero-stat-card small,
.front-page .kion-hero-stat-card small {
  font-size: 13px !important;
  letter-spacing: .18em !important;
  margin-bottom: 14px !important;
}

.home .hero-card strong,
.home .kion-hero-card strong,
.home .hero-stat-card strong,
.home .kion-hero-stat-card strong,
.front-page .hero-card strong,
.front-page .kion-hero-card strong,
.front-page .hero-stat-card strong,
.front-page .kion-hero-stat-card strong {
  font-size: clamp(28px, 2.6vw, 38px) !important;
  line-height: 1.05 !important;
}

@media (max-width: 900px) {
  .home .hero-section,
  .home .kion-hero,
  .front-page .hero-section,
  .front-page .kion-hero {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .home .hero-title,
  .home .kion-hero-title,
  .front-page .hero-title,
  .front-page .kion-hero-title {
    font-size: clamp(42px, 11vw, 64px) !important;
  }

  .home .hero-card,
  .home .kion-hero-card,
  .home .hero-stat-card,
  .home .kion-hero-stat-card,
  .front-page .hero-card,
  .front-page .kion-hero-card,
  .front-page .hero-stat-card,
  .front-page .kion-hero-stat-card {
    min-height: 92px !important;
    padding: 20px 22px !important;
  }
}


/* =========================================================
   v3.10.21 Compact Hero Text Block
========================================================= */

.home .hero-title,
.home .kion-hero-title,
.front-page .hero-title,
.front-page .kion-hero-title {
  font-size: clamp(42px, 4.8vw, 74px) !important;
  line-height: 0.96 !important;
  max-width: 620px !important;
  margin-bottom: 14px !important;
}

.home .hero-copy,
.home .kion-hero-copy,
.front-page .hero-copy,
.front-page .kion-hero-copy {
  font-size: clamp(15px, 1.05vw, 19px) !important;
  line-height: 1.42 !important;
  max-width: 620px !important;
  margin-bottom: 18px !important;
}

.home .hero-actions,
.home .kion-hero-actions,
.front-page .hero-actions,
.front-page .kion-hero-actions {
  margin-top: 10px !important;
}

@media (max-width: 900px) {
  .home .hero-title,
  .home .kion-hero-title,
  .front-page .hero-title,
  .front-page .kion-hero-title {
    font-size: clamp(34px, 10vw, 54px) !important;
    max-width: 100% !important;
  }

  .home .hero-copy,
  .home .kion-hero-copy,
  .front-page .hero-copy,
  .front-page .kion-hero-copy {
    max-width: 100% !important;
  }
}


/* =========================================================
   v3.10.22 Compact Partner Banner Spacing
========================================================= */

.kion-partner-banner,
.partner-banner,
.kion-sponsor-bar,
.kion-partners-bar {
  margin-bottom: 18px !important;
}

.kion-partner-banner + section,
.partner-banner + section,
.kion-sponsor-bar + section,
.kion-partners-bar + section {
  padding-top: 18px !important;
}

.home .kion-partner-banner + section,
.home .partner-banner + section,
.home .kion-sponsor-bar + section,
.home .kion-partners-bar + section {
  margin-top: 0 !important;
}


/* =========================================================
   v3.10.23 Partner/Sponsor Logo Shape Fix
========================================================= */

.kion-partner-card img,
.kion-sponsor-card img,
.partner-card img,
.sponsor-card img,
.kion-partner-logo img,
.kion-sponsor-logo img,
.partner-logo img,
.sponsor-logo img,
.kion-partners-grid img,
.kion-sponsors-grid img {
  border-radius: 0 !important;
  clip-path: none !important;
  overflow: visible !important;
}

.kion-partner-card,
.kion-sponsor-card,
.partner-card,
.sponsor-card {
  overflow: hidden;
}


/* =========================================================
   v3.10.24 Main Partner Logo Radius Override
========================================================= */

.kion-main-partner img,
.kion-main-partner-logo img,
.main-partner img,
.main-partner-logo img,
.kion-featured-partner img,
.kion-featured-partner-logo img,
.kion-main-sponsor img,
.kion-main-sponsor-logo img {
  border-radius: 0 !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  clip-path: none !important;
  overflow: visible !important;
}

.kion-main-partner,
.main-partner,
.kion-featured-partner,
.kion-main-sponsor {
  overflow: visible !important;
}


/* =========================================================
   v3.10.25 Featured Image Original Shape Preservation
========================================================= */

img.wp-post-image,
.partner-featured-image img,
.kion-featured-image img,
.kion-partner-featured-image img,
.kion-driver-featured-image img,
.featured-image img,
.post-thumbnail img {
  border-radius: 0 !important;
  clip-path: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  object-fit: contain !important;
  overflow: visible !important;
}

.partner-featured-image,
.kion-featured-image,
.kion-partner-featured-image,
.kion-driver-featured-image,
.featured-image,
.post-thumbnail {
  overflow: visible !important;
}


/* =========================================================
   v3.10.26 Uniform Moving Partner/Sponsor Banner Logos
========================================================= */

.kion-sponsor-bar img,
.kion-partner-banner img,
.kion-partners-bar img,
.partner-banner img,
.sponsor-banner img,
.kion-logo-marquee img,
.logo-marquee img,
.kion-sponsor-track img,
.kion-partner-track img {
  height: auto !important;
  max-height: 42px !important;
  width: auto !important;
  max-width: 170px !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 0 !important;
  clip-path: none !important;
  transform: none !important;
}

.kion-sponsor-bar .partner-logo,
.kion-partner-banner .partner-logo,
.kion-partners-bar .partner-logo,
.partner-banner .partner-logo,
.sponsor-banner .partner-logo,
.kion-logo-marquee .partner-logo,
.logo-marquee .partner-logo,
.kion-sponsor-track .partner-logo,
.kion-partner-track .partner-logo,
.kion-sponsor-bar a,
.kion-partner-banner a,
.kion-partners-bar a,
.partner-banner a,
.sponsor-banner a {
  height: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}

.kion-sponsor-bar img[alt*="Contest" i],
.kion-partner-banner img[alt*="Contest" i],
.kion-partners-bar img[alt*="Contest" i],
.partner-banner img[alt*="Contest" i],
.sponsor-banner img[alt*="Contest" i],
.kion-sponsor-bar img[alt*="Garage61" i],
.kion-partner-banner img[alt*="Garage61" i],
.kion-partners-bar img[alt*="Garage61" i],
.partner-banner img[alt*="Garage61" i],
.sponsor-banner img[alt*="Garage61" i],
.kion-sponsor-bar img[alt*="F1" i],
.kion-partner-banner img[alt*="F1" i],
.kion-partners-bar img[alt*="F1" i],
.partner-banner img[alt*="F1" i],
.sponsor-banner img[alt*="F1" i] {
  max-height: 34px !important;
  max-width: 150px !important;
}

@media (max-width: 720px) {
  .kion-sponsor-bar img,
  .kion-partner-banner img,
  .kion-partners-bar img,
  .partner-banner img,
  .sponsor-banner img,
  .kion-logo-marquee img,
  .logo-marquee img,
  .kion-sponsor-track img,
  .kion-partner-track img {
    max-height: 34px !important;
    max-width: 140px !important;
  }

  .kion-sponsor-bar .partner-logo,
  .kion-partner-banner .partner-logo,
  .kion-partners-bar .partner-logo,
  .partner-banner .partner-logo,
  .sponsor-banner .partner-logo,
  .kion-logo-marquee .partner-logo,
  .logo-marquee .partner-logo,
  .kion-sponsor-track .partner-logo,
  .kion-partner-track .partner-logo,
  .kion-sponsor-bar a,
  .kion-partner-banner a,
  .kion-partners-bar a,
  .partner-banner a,
  .sponsor-banner a {
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
  }
}


/* Kion v3.10.32 - Mini calendar result badge (loaded stylesheet) */
.mini-calendar-item .mini-calendar-result-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-top: 10px !important;
  padding: 7px 11px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(26,167,255,.82) !important;
  background: linear-gradient(135deg, rgba(26,167,255,.17), rgba(26,167,255,.06)) !important;
  color: #dff3ff !important;
  font-size: 11px !important;
  font-weight: 1000 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .08em !important;
  opacity: 1 !important;
  box-shadow:
    0 0 18px rgba(26,167,255,.20),
    inset 0 0 0 1px rgba(255,255,255,.04) !important;
}

.mini-calendar-item .mini-calendar-result-badge .mini-calendar-result-label {
  display: inline !important;
  color: rgba(223,243,255,.78) !important;
  font-size: inherit !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}











/* Kion v3.10.39 - Render track image next to result pill */
.mini-calendar-item {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 248px;
}

.mini-calendar-item .mini-calendar-status {
  display: none !important;
}

.mini-calendar-item .mini-calendar-meta:first-of-type {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin-bottom: 26px !important;
}

.mini-calendar-item .calendar-status.mini-status-pill {
  margin-left: auto !important;
  white-space: nowrap !important;
}

.mini-calendar-item .mini-calendar-track {
  display: block !important;
  margin-top: 8px !important;
  color: rgba(214,224,239,.62) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

.mini-calendar-bottom-row {
  display: grid !important;
  grid-template-columns: max-content minmax(118px, 1fr) !important;
  align-items: end !important;
  gap: 14px !important;
  margin-top: auto !important;
}

.mini-calendar-bottom-row .mini-calendar-result-badge {
  margin-top: 0 !important;
  align-self: end !important;
}

.mini-calendar-track-image.result-side-image {
  display: block !important;
  width: 100% !important;
  max-width: 172px !important;
  height: 76px !important;
  justify-self: end !important;
  overflow: hidden !important;
  border-radius: 11px !important;
  border: 1px solid rgba(34,167,255,.34) !important;
  background: rgba(255,255,255,.035) !important;
  box-shadow: 0 0 16px rgba(34,167,255,.14) !important;
}

.mini-calendar-track-image.result-side-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media (max-width: 520px) {
  .mini-calendar-bottom-row {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .mini-calendar-track-image.result-side-image {
    justify-self: start !important;
    max-width: 100% !important;
  }
}


/* Kion v3.10.40 - Keep finished race track image uncropped */
.mini-calendar-track-image.result-side-image {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  background: transparent !important;
}

.mini-calendar-track-image.result-side-image img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
}


/* Kion v3.10.41 - Default car placeholder styling */
.kion-car-image-wrap,
.event-car-placeholder,
.kion-car-placeholder {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: 14px;
  border: 1px solid rgba(34,167,255,.22);
  background: linear-gradient(135deg, rgba(7,20,36,.94), rgba(11,31,53,.86));
  box-shadow: 0 0 18px rgba(34,167,255,.10);
}

.kion-car-image-wrap img,
.event-car-placeholder img,
.kion-car-placeholder img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.kion-car-placeholder {
  border-style: dashed;
  border-color: rgba(34,167,255,.42);
  opacity: .9;
}

.kion-car-placeholder::after {
  content: "CAR TBA";
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 9px;
  border-radius: 999px;
  border: 1px solid rgba(166,255,0,.44);
  background: rgba(166,255,0,.08);
  color: rgba(232,255,190,.92);
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 0 12px rgba(166,255,0,.14);
}


/* Kion v3.10.43 - Strategy page Garage61 sync button */
.strategy-sync-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
}

.kion-garage61-planner-sync-form {
  margin-left: auto;
}

.kion-g61-sync-button {
  border-color: rgba(34,167,255,.70) !important;
  background: linear-gradient(135deg, rgba(34,167,255,.22), rgba(34,167,255,.08)) !important;
  color: #dff3ff !important;
  box-shadow: 0 0 16px rgba(34,167,255,.16) !important;
  white-space: nowrap;
}

.kion-planner-sync-notice {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 14px 0 16px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(34,167,255,.30);
  background: rgba(34,167,255,.08);
  color: rgba(223,243,255,.92);
  box-shadow: 0 0 16px rgba(34,167,255,.10);
}

.kion-planner-sync-notice.success {
  border-color: rgba(166,255,0,.32);
  background: rgba(166,255,0,.06);
}

.kion-planner-sync-notice.warning {
  border-color: rgba(255,190,80,.36);
  background: rgba(255,190,80,.07);
}

.kion-planner-sync-notice span {
  color: rgba(214,224,239,.72);
  font-size: .86rem;
}

@media (max-width: 720px) {
  .strategy-sync-heading {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .kion-garage61-planner-sync-form {
    grid-column: 1 / -1;
    margin-left: 0;
  }

  .kion-g61-sync-button {
    width: 100%;
  }
}


/* Kion v3.10.44 - Inline coverage check */
.kion-inline-coverage-check {
  margin-top: 26px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.kion-inline-coverage-header {
  margin-bottom: 16px;
}

.kion-inline-coverage-header h4 {
  margin: 6px 0;
  color: #dff3ff;
  font-size: 1.05rem;
}

.kion-inline-coverage-header p {
  margin: 0;
  color: rgba(214,224,239,.68);
  font-size: .92rem;
}


/* Kion v3.10.47 - Strategy car filter */
.kion-strategy-car-filter {
  display: flex;
  align-items: end;
  gap: 14px;
  flex-wrap: wrap;
  margin: 16px 0 18px;
  padding: 14px;
  border: 1px solid rgba(34,167,255,.20);
  border-radius: 16px;
  background: rgba(34,167,255,.055);
}

.kion-strategy-car-filter label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 260px;
}

.kion-strategy-car-filter label span {
  color: rgba(214,224,239,.72);
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.kion-strategy-car-filter select {
  min-height: 40px;
}

.kion-strategy-car-filter small {
  color: rgba(214,224,239,.62);
  max-width: 520px;
  line-height: 1.35;
}

.kion-strategy-car-intel-panel {
  margin-top: 14px;
}


/* Kion v3.10.48 - Step 4 only shows drivers selected in step 2 */
.kion-step4-selected-driver-warning {
  margin: 14px 0;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(255,190,80,.35);
  background: rgba(255,190,80,.08);
  color: rgba(255,236,205,.92);
  font-weight: 700;
}

.strategy-driver-card.is-not-selected-for-event {
  display: none !important;
}


/* Kion v3.10.51 - Planner draft preservation for car filter reloads */
.kion-strategy-car-filter::after {
  content: "Unsaved planner input is temporarily preserved when changing this filter.";
  color: rgba(214,224,239,.52);
  font-size: .78rem;
}


/* Kion v3.10.52 - Track-aware used car filter */
.kion-strategy-car-filter small {
  color: rgba(166,255,0,.68);
}


/* Kion v3.10.56 - Garage61 planner sync status clarity */
.kion-planner-sync-notice small {
  color: rgba(166,255,0,.72);
  font-size: .82rem;
  line-height: 1.35;
}


/* Kion v3.10.57 - G61 selected driver filtering */
[data-step4-g61-intel-panel] .kion-driver-intel-card.is-not-selected-for-event {
  display: none !important;
}

[data-step4-g61-intel-panel].has-no-selected-drivers .kion-strategy-intel-grid {
  display: none !important;
}


/* Kion v3.10.58 - Recommended order selected drivers only */
[data-step4-recommendations-panel] .is-not-selected-for-event {
  display: none !important;
}


/* Kion v3.10.59 - AI recommendation strict selected driver filter */
[data-step4-recommendations-panel] .strategy-ai-rank-card.is-not-selected-for-event {
  display: none !important;
}


/* Kion v3.10.60 - Per-driver G61 car selector */
.kion-driver-g61-car-selector {
  margin: 14px 0 16px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(34,167,255,.18);
  background: rgba(34,167,255,.055);
}

.kion-driver-g61-car-selector-head {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-bottom: 10px;
}

.kion-driver-g61-car-selector-head strong {
  color: #dff3ff;
  font-size: .92rem;
}

.kion-driver-g61-car-selector-head small {
  color: rgba(214,224,239,.58);
  font-size: .78rem;
}

.kion-driver-g61-car-radio-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.kion-driver-g61-car-radio {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
  cursor: pointer;
}

.kion-driver-g61-car-radio:has(input:checked) {
  border-color: rgba(166,255,0,.42);
  background: rgba(166,255,0,.075);
  box-shadow: 0 0 14px rgba(166,255,0,.10);
}

.kion-driver-g61-car-radio span {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.kion-driver-g61-car-radio strong {
  color: rgba(223,243,255,.96);
  font-size: .82rem;
}

.kion-driver-g61-car-radio small {
  color: rgba(214,224,239,.60);
  font-size: .72rem;
}


/* Kion v3.10.61 - Team car recommendation */
.kion-team-car-recommendation {
  margin: 18px 0;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid rgba(34,167,255,.24);
  background: rgba(34,167,255,.055);
  box-shadow: 0 0 18px rgba(34,167,255,.08);
}

.kion-recommended-team-car {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 14px 0;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(166,255,0,.36);
  background: rgba(166,255,0,.07);
}

.kion-recommended-team-car span,
.kion-team-car-option small,
.kion-team-car-option em,
.kion-team-car-debug small {
  color: rgba(214,224,239,.66);
}

.kion-recommended-team-car strong {
  color: #dff3ff;
  font-size: 1.28rem;
}

.kion-team-car-table {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.kion-team-car-option {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
  cursor: pointer;
}

.kion-team-car-option:has(input:checked) {
  border-color: rgba(166,255,0,.42);
  background: rgba(166,255,0,.075);
}

.kion-team-car-option span {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.kion-team-car-option strong {
  color: #dff3ff;
}

.kion-team-car-option em {
  font-style: normal;
  font-size: .78rem;
}

.kion-team-car-debug {
  margin-top: 14px;
  color: rgba(214,224,239,.76);
}

.kion-team-car-debug-grid {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.kion-team-car-debug-grid div {
  padding: 10px;
  border-radius: 12px;
  background: rgba(255,255,255,.035);
}

.kion-team-car-debug-grid code {
  display: block;
  margin-top: 4px;
  white-space: normal;
  color: rgba(166,255,0,.78);
}


/* Kion v3.10.65 - Step 4 team-car selected-driver filter */
.kion-step4-scope-note {
  margin: 12px 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(166,255,0,.24);
  background: rgba(166,255,0,.055);
  color: rgba(232,255,190,.86);
  font-size: .84rem;
  font-weight: 700;
}

[data-step4-team-car-recommendation] .is-not-selected-for-event {
  display: none !important;
}

.kion-team-car-debug.has-no-selected-drivers::after {
  content: "No selected step-2 drivers in this debug set.";
  display: block;
  margin-top: 10px;
  color: rgba(214,224,239,.62);
}


/* Kion v3.10.66 - Compact team-car recommendation grid */
.kion-team-car-table {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch;
}

.kion-team-car-option {
  height: 100%;
  min-height: 118px;
  padding: 10px !important;
}

.kion-team-car-option span {
  gap: 3px !important;
}

.kion-team-car-option strong {
  font-size: .9rem;
  line-height: 1.2;
}

.kion-team-car-option small {
  font-size: .72rem;
  line-height: 1.3;
}

.kion-team-car-option em {
  margin-top: auto;
  font-size: .7rem;
  line-height: 1.2;
}

@media (min-width: 1600px) {
  .kion-team-car-table {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1100px) and (max-width: 1599px) {
  .kion-team-car-table {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1099px) {
  .kion-team-car-table {
    grid-template-columns: 1fr !important;
  }
}


/* Kion v3.10.67 - Classified team-car grid */
.kion-team-car-class-groups {
  display: grid;
  gap: 16px;
  margin-top: 14px;
}

.kion-team-car-class-group {
  padding: 12px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.025);
}

.kion-team-car-class-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.kion-team-car-class-heading strong {
  color: #dff3ff;
  font-size: .95rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.kion-team-car-class-heading small {
  color: rgba(166,255,0,.72);
  font-size: .75rem;
  font-weight: 800;
}


/* Kion v3.10.68 - Collapsible car class groups */
.kion-team-car-class-group {
  overflow: hidden;
}

.kion-team-car-class-heading {
  cursor: pointer;
  list-style: none;
}

.kion-team-car-class-heading::-webkit-details-marker {
  display: none;
}

.kion-team-car-class-heading::after {
  content: "+";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-left: auto;
  border-radius: 999px;
  border: 1px solid rgba(34,167,255,.32);
  color: rgba(166,255,0,.86);
  font-weight: 900;
  line-height: 1;
}

.kion-team-car-class-group[open] .kion-team-car-class-heading::after {
  content: "–";
}

.kion-team-car-class-group:not([open]) {
  padding-bottom: 12px;
}

.kion-team-car-class-group:not([open]) .kion-team-car-class-heading {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0;
}

.kion-team-car-class-group[open] .kion-team-car-table {
  animation: kionClassGroupReveal .18s ease-out;
}

@keyframes kionClassGroupReveal {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* Kion v3.10.69 - Shared car check */
.kion-shared-car-check {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 12px 0 16px;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: .86rem;
}

.kion-shared-car-check.success {
  border: 1px solid rgba(166,255,0,.38);
  background: rgba(166,255,0,.07);
  color: rgba(232,255,190,.94);
}

.kion-shared-car-check.warning {
  border: 1px solid rgba(255,190,80,.38);
  background: rgba(255,190,80,.075);
  color: rgba(255,236,205,.94);
}

.kion-shared-car-check span {
  color: rgba(214,224,239,.70);
}

.kion-team-car-option.is-shared-by-all {
  border-color: rgba(166,255,0,.45) !important;
  box-shadow: 0 0 16px rgba(166,255,0,.10);
}

.kion-shared-car-badge {
  display: inline-flex;
  width: fit-content;
  margin-top: 3px;
  padding: 4px 7px;
  border-radius: 999px;
  font-size: .64rem;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.kion-shared-car-badge.success {
  border: 1px solid rgba(166,255,0,.42);
  background: rgba(166,255,0,.08);
  color: rgba(232,255,190,.96);
}

.kion-shared-car-badge.partial {
  border: 1px solid rgba(255,190,80,.30);
  background: rgba(255,190,80,.07);
  color: rgba(255,236,205,.82);
}


/* Kion v3.10.70 - Track match debug panel */
.kion-track-match-debug-panel {
  margin: 16px 0;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(34,167,255,.22);
  background: rgba(34,167,255,.045);
}

.kion-track-match-debug-panel summary {
  cursor: pointer;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  list-style: none;
}

.kion-track-match-debug-panel summary::-webkit-details-marker {
  display: none;
}

.kion-track-match-debug-panel summary strong {
  color: #dff3ff;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.kion-track-match-debug-panel summary small {
  color: rgba(166,255,0,.76);
  font-weight: 800;
}

.kion-track-debug-grid {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.kion-track-debug-card {
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.03);
}

.kion-track-debug-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.kion-track-debug-head strong {
  color: #dff3ff;
}

.kion-track-debug-head small {
  color: rgba(214,224,239,.62);
}

.kion-track-chip-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.kion-track-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 8px;
  border-radius: 999px;
  font-size: .74rem;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
}

.kion-track-chip strong {
  color: rgba(223,243,255,.9);
  font-weight: 800;
}

.kion-track-chip small {
  color: rgba(214,224,239,.58);
}

.kion-track-chip.is-match {
  border-color: rgba(166,255,0,.42);
  background: rgba(166,255,0,.075);
}

.kion-track-chip.is-match strong,
.kion-track-chip.is-match small {
  color: rgba(232,255,190,.95);
}

[data-step4-track-debug] .is-not-selected-for-event {
  display: none !important;
}


/* Kion v3.10.71 - Final plan live availability */
.final-slot-empty-message {
  margin-top: 10px;
}


/* Kion v3.10.74 - Driver last activity card */
.kion-driver-last-activity-panel {
  border-color: rgba(34,167,255,.24);
  background: rgba(34,167,255,.045);
}

.kion-driver-last-activity-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.kion-driver-last-activity-details span {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 9px 10px;
  border-radius: 12px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
}

.kion-driver-last-activity-details small {
  color: rgba(214,224,239,.58);
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: .68rem;
  font-weight: 800;
}

.kion-driver-last-activity-details strong {
  color: #dff3ff;
  font-size: .88rem;
}

.kion-driver-last-activity-note {
  display: block;
  margin-top: 10px;
  color: rgba(166,255,0,.72);
  font-size: .78rem;
}


/* Kion v3.10.76 - G61 statistics debug panel */
.kion-g61-statistics-debug-panel {
  margin-top: 14px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(255,190,80,.30);
  background: rgba(255,190,80,.055);
}

.kion-g61-statistics-debug-panel summary {
  cursor: pointer;
  color: rgba(255,236,205,.95);
  font-weight: 800;
}

.kion-g61-statistics-debug-panel p {
  color: rgba(214,224,239,.72);
  font-size: .84rem;
}

.kion-g61-statistics-debug-panel textarea {
  width: 100%;
  min-height: 240px;
  margin-top: 8px;
  border-radius: 10px;
  background: rgba(0,0,0,.25);
  color: rgba(223,243,255,.92);
  border: 1px solid rgba(255,255,255,.12);
  font-family: Consolas, Monaco, monospace;
  font-size: 12px;
}


/* Kion v3.10.77 - Mobile optimisation layer */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
video,
iframe,
svg {
  max-width: 100%;
  height: auto;
}

.container,
.site-container,
.wrap {
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 900px) {
  .container {
    width: min(100% - 28px, 100%) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .section,
  .hero-section,
  .surface,
  .stint-planner-section,
  .pro-calendar-section,
  .driver-profile-section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .hero-grid,
  .calendar-heading,
  .section-heading,
  .driver-profile-grid,
  .footer-grid,
  .site-footer .container,
  .planner-step-heading,
  .strategy-sync-heading {
    grid-template-columns: 1fr !important;
    display: grid;
    gap: 18px;
  }

  .hero-copy h1,
  .section-heading h2,
  .calendar-heading h2 {
    font-size: clamp(2rem, 9vw, 3.2rem) !important;
    line-height: .95 !important;
    letter-spacing: -.04em;
  }

  .hero-copy p,
  .section-heading p,
  .calendar-heading p {
    font-size: .98rem !important;
    line-height: 1.55 !important;
  }

  .hero-actions,
  .calendar-actions,
  .driver-profile-card .button,
  .driver-profile-card .button + .button {
    width: 100%;
  }

  .hero-actions,
  .calendar-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .button,
  button.button,
  input[type="submit"].button {
    width: 100%;
    justify-content: center;
    text-align: center;
    min-height: 44px;
  }

  .card,
  .hero-panel,
  .stat-card,
  .kion-data-panel,
  .driver-profile-card,
  .driver-profile-content,
  .planner-step-card {
    border-radius: 18px !important;
  }
}

/* Header / navigation */
@media (max-width: 900px) {
  .site-header,
  .kion-header,
  header.site-header {
    position: relative !important;
    top: auto !important;
  }

  .site-header .container,
  .kion-header-inner,
  .main-navigation,
  .primary-menu,
  .menu {
    max-width: 100%;
  }

  .main-navigation ul,
  .primary-menu,
  .menu {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
  }

  .main-navigation a,
  .primary-menu a,
  .menu a {
    padding: 9px 10px !important;
    font-size: .82rem !important;
  }
}

/* Frontpage / cards */
@media (max-width: 900px) {
  .race-grid,
  .calendar-grid,
  .kion-calendar-grid,
  .drivers-grid,
  .team-grid,
  .partners-grid,
  .sponsor-grid,
  .kion-class-grid,
  .driver-stats,
  .driver-stats-large,
  .kion-license-tab-buttons,
  .kion-driver-last-activity-details {
    grid-template-columns: 1fr !important;
  }

  .race-card,
  .event-card,
  .driver-card,
  .partner-card,
  .sponsor-card {
    min-width: 0 !important;
  }

  .driver-card img,
  .race-card img,
  .event-card img,
  .featured-image,
  .wp-post-image {
    width: 100%;
    object-fit: contain;
  }

  .kion-moving-partners,
  .partner-marquee,
  .sponsor-marquee {
    max-width: 100vw;
    overflow: hidden;
  }
}

/* Calendar / event result cards */
@media (max-width: 900px) {
  .calendar-event-card,
  .kion-event-card,
  .race-result-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .event-status-pill,
  .result-pill,
  .finished-pill,
  .calendar-pill {
    position: static !important;
    width: fit-content;
    max-width: 100%;
  }

  .event-trackmap,
  .calendar-trackmap,
  .race-trackmap,
  .finished-trackmap {
    width: 100% !important;
    max-width: 220px !important;
    justify-self: start !important;
    object-fit: contain !important;
  }
}

/* Driver profile */
@media (max-width: 900px) {
  .driver-profile-grid {
    align-items: stretch !important;
  }

  .driver-profile-card {
    position: static !important;
    top: auto !important;
    width: 100% !important;
  }

  .driver-profile-card img,
  .driver-avatar-large,
  .kion-lion-profile-placeholder {
    width: min(100%, 280px) !important;
    margin-left: auto;
    margin-right: auto;
  }

  .driver-meta,
  .driver-meta.stacked {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .driver-meta span {
    max-width: 100%;
  }

  .kion-license-tab-buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .kion-license-tab-button {
    width: 100%;
  }

  .kion-results-table-wrap,
  .kion-table-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
  }

  .kion-results-table,
  table {
    min-width: 720px;
  }

  .kion-g61-statistics-debug-panel textarea {
    min-height: 200px;
    font-size: 11px;
  }
}

/* Stint planner / strategy wizard */
@media (max-width: 900px) {
  .planner-wizard,
  .strategy-wizard,
  .kion-app-wizard {
    max-width: 100%;
  }

  .kion-wizard-progress {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .kion-wizard-step {
    width: 100%;
    min-width: 0;
    padding: 9px 8px !important;
    font-size: .78rem !important;
  }

  .planner-step-heading,
  .strategy-sync-heading {
    align-items: stretch !important;
  }

  .planner-step-number {
    width: 38px !important;
    height: 38px !important;
  }

  .kion-garage61-planner-sync-link,
  .kion-g61-sync-button {
    width: 100% !important;
  }

  .planner-field-grid,
  .strategy-field-grid,
  .auto-stint-grid,
  .final-stint-detail-grid,
  .manual-stint-time-controls,
  .driver-picker-grid,
  .availability-grid,
  .coverage-board,
  .strategy-driver-grid,
  .kion-strategy-intel-grid,
  .kion-team-car-table,
  .kion-track-debug-grid {
    grid-template-columns: 1fr !important;
  }

  .availability-table,
  .coverage-board,
  .auto-stint-slot-list,
  .stint-driver-radio-group,
  .kion-track-chip-grid {
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .availability-driver-row,
  .coverage-slot,
  .auto-stint-slot-card,
  .strategy-driver-card,
  .kion-driver-intel-card,
  .kion-team-car-option,
  .kion-track-debug-card {
    min-width: 0 !important;
  }

  .auto-stint-slot-head {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .stint-coverage-badge,
  .slot-coverage-indicator {
    width: fit-content;
  }

  .kion-strategy-car-filter {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: stretch !important;
  }

  .kion-strategy-car-filter label {
    min-width: 0 !important;
  }

  .kion-team-car-class-heading,
  .kion-track-match-debug-panel summary {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center;
  }

  .kion-team-car-class-heading small,
  .kion-track-match-debug-panel summary small {
    grid-column: 1 / -1;
  }
}

/* Very small phones */
@media (max-width: 520px) {
  .container {
    width: min(100% - 20px, 100%) !important;
  }

  .hero-copy h1,
  .section-heading h2,
  .calendar-heading h2 {
    font-size: clamp(1.85rem, 11vw, 2.55rem) !important;
  }

  .eyebrow {
    font-size: .68rem !important;
    letter-spacing: .12em !important;
  }

  .card,
  .kion-data-panel,
  .planner-step-card,
  .driver-profile-card {
    padding: 16px !important;
  }

  .kion-wizard-progress {
    grid-template-columns: 1fr !important;
  }

  .kion-track-chip-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .kion-track-chip,
  .result-pill,
  .event-status-pill,
  .calendar-pill {
    width: 100%;
    justify-content: space-between;
  }

  .kion-team-car-option {
    grid-template-columns: 1fr !important;
  }

  .kion-team-car-option input[type="radio"] {
    justify-self: start;
  }
}


/* Kion v3.10.78 - Dedicated mobile driver profile optimisation */
@media (max-width: 900px) {
  body.single-kion_driver .driver-profile-section {
    padding-top: 22px !important;
  }

  body.single-kion_driver .driver-profile-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.single-kion_driver .driver-profile-card,
  body.single-kion_driver .driver-profile-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-kion_driver .driver-profile-card {
    position: relative !important;
    top: auto !important;
    padding: 18px !important;
    text-align: center;
  }

  body.single-kion_driver .driver-profile-card > img,
  body.single-kion_driver .driver-profile-card .wp-post-image,
  body.single-kion_driver .driver-avatar-placeholder,
  body.single-kion_driver .driver-avatar-large,
  body.single-kion_driver .kion-lion-profile-placeholder {
    display: block !important;
    width: min(100%, 240px) !important;
    max-width: 240px !important;
    height: auto !important;
    max-height: 280px !important;
    object-fit: contain !important;
    margin: 0 auto 14px !important;
  }

  body.single-kion_driver .driver-role {
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }

  body.single-kion_driver .driver-profile-card h1 {
    font-size: clamp(1.75rem, 9vw, 2.6rem) !important;
    line-height: 1 !important;
    margin: 10px 0 !important;
    word-break: normal;
    overflow-wrap: anywhere;
  }

  body.single-kion_driver .driver-profile-summary {
    font-size: .95rem !important;
    line-height: 1.45 !important;
  }

  body.single-kion_driver .driver-meta.stacked,
  body.single-kion_driver .driver-meta {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  body.single-kion_driver .driver-meta span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: center;
    overflow-wrap: anywhere;
  }

  body.single-kion_driver .driver-profile-card .button {
    display: flex !important;
    width: 100% !important;
    margin-top: 10px !important;
  }

  body.single-kion_driver .driver-profile-content {
    padding: 18px !important;
  }

  body.single-kion_driver .driver-profile-content > h2 {
    font-size: clamp(1.65rem, 7vw, 2.3rem) !important;
    line-height: 1.05 !important;
  }

  body.single-kion_driver .kion-license-tabs {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden;
  }

  body.single-kion_driver .kion-license-tab-buttons {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body.single-kion_driver .kion-license-tab-button {
    width: 100% !important;
    min-height: 42px;
    justify-content: center;
    text-align: center;
    white-space: normal !important;
  }

  body.single-kion_driver .kion-license-tab-panel {
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px !important;
    box-sizing: border-box !important;
  }

  body.single-kion_driver .kion-class-updated-badge {
    width: 100%;
    display: block;
    text-align: center;
    margin-bottom: 12px;
  }

  body.single-kion_driver .driver-stats,
  body.single-kion_driver .driver-stats-large {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.single-kion_driver .driver-stats > div,
  body.single-kion_driver .driver-stats-large > div {
    min-width: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: center;
  }

  body.single-kion_driver .driver-stats strong,
  body.single-kion_driver .driver-stats-large strong {
    font-size: clamp(1rem, 5vw, 1.35rem) !important;
    overflow-wrap: anywhere;
  }

  body.single-kion_driver .kion-data-panel {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden;
  }

  body.single-kion_driver .kion-data-panel h3 {
    font-size: 1.15rem !important;
    line-height: 1.2 !important;
  }

  body.single-kion_driver .kion-data-panel p {
    font-size: .94rem !important;
    line-height: 1.45 !important;
    overflow-wrap: anywhere;
  }

  body.single-kion_driver .kion-driver-last-activity-details,
  body.single-kion_driver .kion-class-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.single-kion_driver .kion-results-table-wrap {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-radius: 14px;
  }

  body.single-kion_driver .kion-results-table-wrap::after {
    content: "Swipe sideways to view full table";
    display: block;
    padding: 8px 2px 0;
    color: rgba(214,224,239,.52);
    font-size: .72rem;
    text-align: center;
  }

  body.single-kion_driver .kion-results-table {
    min-width: 760px !important;
    width: 760px !important;
  }

  body.single-kion_driver .kion-results-table th,
  body.single-kion_driver .kion-results-table td {
    padding: 9px 10px !important;
    font-size: .78rem !important;
    white-space: nowrap;
  }

  body.single-kion_driver .kion-profile-sync-debug,
  body.single-kion_driver .kion-g61-statistics-debug-panel {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden;
  }

  body.single-kion_driver .kion-g61-statistics-debug-panel textarea {
    width: 100% !important;
    min-height: 180px !important;
    max-width: 100% !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 520px) {
  body.single-kion_driver .driver-profile-section .container {
    width: calc(100% - 18px) !important;
  }

  body.single-kion_driver .driver-profile-card,
  body.single-kion_driver .driver-profile-content,
  body.single-kion_driver .kion-data-panel {
    padding: 14px !important;
    border-radius: 16px !important;
  }

  body.single-kion_driver .driver-profile-card > img,
  body.single-kion_driver .driver-profile-card .wp-post-image,
  body.single-kion_driver .driver-avatar-placeholder,
  body.single-kion_driver .driver-avatar-large,
  body.single-kion_driver .kion-lion-profile-placeholder {
    width: min(100%, 210px) !important;
    max-width: 210px !important;
  }

  body.single-kion_driver .driver-profile-card h1 {
    font-size: clamp(1.55rem, 11vw, 2.2rem) !important;
  }

  body.single-kion_driver .driver-meta span,
  body.single-kion_driver .driver-stats > div,
  body.single-kion_driver .driver-stats-large > div,
  body.single-kion_driver .kion-driver-last-activity-details span {
    padding: 10px !important;
  }
}


/* Kion v3.10.79 - Driver cards: remove duplicate plain meta, keep pills */
.driver-card .driver-meta:not(.stacked),
.driver-card .driver-profile-summary,
.driver-card .driver-card-summary,
.driver-card .driver-card-meta,
.kion-driver-card .driver-meta:not(.stacked),
.kion-driver-card .driver-profile-summary,
.kion-driver-card .driver-card-summary,
.kion-driver-card .driver-card-meta {
  display: none !important;
}

/* Keep actual pill/badge metadata visible */
.driver-card .driver-pill,
.driver-card .driver-pills,
.driver-card .driver-badge,
.driver-card .driver-badges,
.driver-card .driver-role,
.driver-card .kion-pill,
.driver-card .kion-driver-pill,
.driver-card .kion-driver-tags,
.driver-card .driver-tags,
.kion-driver-card .driver-pill,
.kion-driver-card .driver-pills,
.kion-driver-card .driver-badge,
.kion-driver-card .driver-badges,
.kion-driver-card .driver-role,
.kion-driver-card .kion-pill,
.kion-driver-card .kion-driver-pill,
.kion-driver-card .kion-driver-tags,
.kion-driver-card .driver-tags {
  display: flex !important;
}

/* If the duplicate text is rendered as plain paragraphs/spans directly under the card, hide only known meta wrappers. */
.drivers-grid .driver-card > .driver-meta,
.drivers-grid .driver-card > .driver-profile-summary,
.drivers-grid .driver-card > .driver-card-summary,
.team-grid .driver-card > .driver-meta,
.team-grid .driver-card > .driver-profile-summary,
.team-grid .driver-card > .driver-card-summary {
  display: none !important;
}


/* Kion v3.10.80 - Driver card duplicate metadata cleanup */
.drivers-grid .driver-card .driver-meta,
.drivers-grid .driver-card .driver-profile-summary,
.drivers-grid .driver-card .driver-card-summary,
.team-grid .driver-card .driver-meta,
.team-grid .driver-card .driver-profile-summary,
.team-grid .driver-card .driver-card-summary,
.kion-driver-grid .driver-card .driver-meta,
.kion-driver-grid .driver-card .driver-profile-summary,
.kion-driver-grid .driver-card .driver-card-summary {
  display: none !important;
}

/* Keep pills/badges/tags visible */
.drivers-grid .driver-card .driver-tags,
.drivers-grid .driver-card .driver-pills,
.drivers-grid .driver-card .driver-role,
.drivers-grid .driver-card .kion-pill,
.drivers-grid .driver-card .kion-driver-tags,
.team-grid .driver-card .driver-tags,
.team-grid .driver-card .driver-pills,
.team-grid .driver-card .driver-role,
.team-grid .driver-card .kion-pill,
.team-grid .driver-card .kion-driver-tags,
.kion-driver-grid .driver-card .driver-tags,
.kion-driver-grid .driver-card .driver-pills,
.kion-driver-grid .driver-card .driver-role,
.kion-driver-grid .driver-card .kion-pill,
.kion-driver-grid .driver-card .kion-driver-tags {
  display: flex !important;
}


/* Kion v3.10.81 - Driver page lion placeholder */
.driver-card .kion-lion-card-placeholder,
.kion-driver-card .kion-lion-card-placeholder {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at center, rgba(34,167,255,.16), rgba(2,8,20,.92));
  border: 1px solid rgba(34,167,255,.18);
}

.driver-card .kion-lion-card-placeholder .kion-lion-placeholder-img,
.kion-driver-card .kion-lion-card-placeholder .kion-lion-placeholder-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 12%;
  opacity: .92;
}

@media (max-width: 900px) {
  .driver-card .kion-lion-card-placeholder,
  .kion-driver-card .kion-lion-card-placeholder {
    max-width: 100%;
  }
}


/* Kion v3.10.84 - Hide plain driver meta text, keep pills */
.driver-profile-summary,
.driver-card-summary {
  display: none !important;
}

.driver-pills,
.kion-pill {
  display: flex !important;
}


/* Kion v3.10.85 - Consistent driver overview lion placeholder */
.page-template-page-drivers .driver-card .kion-lion-card-placeholder,
.drivers-grid .driver-card .kion-lion-card-placeholder,
.kion-driver-grid .driver-card .kion-lion-card-placeholder {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at center, rgba(34,167,255,.16), rgba(2,8,20,.92));
  border: 1px solid rgba(34,167,255,.18);
  color: transparent !important;
  font-size: 0 !important;
}

.page-template-page-drivers .driver-card .kion-lion-placeholder-img,
.drivers-grid .driver-card .kion-lion-placeholder-img,
.kion-driver-grid .driver-card .kion-lion-placeholder-img {
  display: block !important;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 12%;
  opacity: .92;
}


/* Kion v3.10.86 - Hide duplicate plain driver-card summary, keep pills */
.page-template-page-drivers .driver-card .driver-card-summary,
.page-template-page-drivers .driver-card .driver-profile-summary,
.page-template-page-drivers .driver-card .driver-subtitle,
.page-template-page-drivers .driver-card .driver-meta-line,
.page-template-page-drivers .driver-card .driver-summary,
.page-template-page-drivers .driver-card > p,
.drivers-grid .driver-card .driver-card-summary,
.drivers-grid .driver-card .driver-profile-summary,
.drivers-grid .driver-card .driver-subtitle,
.drivers-grid .driver-card .driver-meta-line,
.drivers-grid .driver-card .driver-summary,
.drivers-grid .driver-card > p,
.kion-driver-grid .driver-card .driver-card-summary,
.kion-driver-grid .driver-card .driver-profile-summary,
.kion-driver-grid .driver-card .driver-subtitle,
.kion-driver-grid .driver-card .driver-meta-line,
.kion-driver-grid .driver-card .driver-summary,
.kion-driver-grid .driver-card > p {
  display: none !important;
}

/* Do not hide the button area or pills */
.page-template-page-drivers .driver-card .driver-pills,
.page-template-page-drivers .driver-card .driver-tags,
.page-template-page-drivers .driver-card .kion-driver-tags,
.page-template-page-drivers .driver-card .kion-pill,
.page-template-page-drivers .driver-card .driver-role,
.drivers-grid .driver-card .driver-pills,
.drivers-grid .driver-card .driver-tags,
.drivers-grid .driver-card .kion-driver-tags,
.drivers-grid .driver-card .kion-pill,
.drivers-grid .driver-card .driver-role,
.kion-driver-grid .driver-card .driver-pills,
.kion-driver-grid .driver-card .driver-tags,
.kion-driver-grid .driver-card .kion-driver-tags,
.kion-driver-grid .driver-card .kion-pill,
.kion-driver-grid .driver-card .driver-role {
  display: flex !important;
}

/* Specific pattern from the visible card: the plain "Driver · British · GT3" line */
.page-template-page-drivers .driver-card h3 + .driver-card-summary,
.page-template-page-drivers .driver-card h3 + .driver-profile-summary,
.page-template-page-drivers .driver-card h3 + .driver-summary,
.drivers-grid .driver-card h3 + .driver-card-summary,
.drivers-grid .driver-card h3 + .driver-profile-summary,
.drivers-grid .driver-card h3 + .driver-summary {
  display: none !important;
}


/* Kion v3.10.87 - Remove duplicate driver summary on /drivers/ */
.page-template-page-drivers .driver-card p,
.page-template-page-drivers .driver-card .driver-summary,
.page-template-page-drivers .driver-card .driver-subtitle,
.page-template-page-drivers .driver-card .driver-profile-summary,
.page-template-page-drivers .driver-card .driver-card-summary,
.post-type-archive-kion_driver .driver-card p,
.post-type-archive-kion_driver .driver-card .driver-summary,
.post-type-archive-kion_driver .driver-card .driver-subtitle,
.post-type-archive-kion_driver .driver-card .driver-profile-summary,
.post-type-archive-kion_driver .driver-card .driver-card-summary {
  display: none !important;
}

/* Keep pills/buttons */
.page-template-page-drivers .driver-card .driver-pills,
.page-template-page-drivers .driver-card .kion-pill,
.page-template-page-drivers .driver-card .driver-role,
.page-template-page-drivers .driver-card .button,
.post-type-archive-kion_driver .driver-card .driver-pills,
.post-type-archive-kion_driver .driver-card .kion-pill,
.post-type-archive-kion_driver .driver-card .driver-role,
.post-type-archive-kion_driver .driver-card .button {
  display: flex !important;
}


/* Kion v3.10.88 - Drivers page lion placeholder */
.page-template-page-drivers .kion-lion-card-placeholder,
.post-type-archive-kion_driver .kion-lion-card-placeholder,
.drivers-grid .kion-lion-card-placeholder {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 18px;
  background: radial-gradient(circle at center, rgba(34,167,255,.14), rgba(2,8,20,.92));
  border: 1px solid rgba(34,167,255,.18);
}

.page-template-page-drivers .kion-lion-placeholder-img,
.post-type-archive-kion_driver .kion-lion-placeholder-img,
.drivers-grid .kion-lion-placeholder-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 12%;
  opacity: .92;
}


/* Kion v3.10.89 - Homepage calendar trackmaps for upcoming races */
.mini-calendar-track-image,
.compact-race-map {
  display: flex;
  align-items: center;
  justify-content: center;
}

.mini-calendar-track-image img {
  max-width: 100%;
  max-height: 76px;
  object-fit: contain;
}

.compact-race-map img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}


/* Kion v3.10.90 - Final /drivers plain KION placeholder replacement */
.page-template-page-drivers .driver-card .kion-lion-card-placeholder,
.post-type-archive-kion_driver .driver-card .kion-lion-card-placeholder,
.drivers-grid .driver-card .kion-lion-card-placeholder,
.kion-driver-grid .driver-card .kion-lion-card-placeholder {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 18px;
  overflow: hidden;
  background: radial-gradient(circle at center, rgba(34,167,255,.14), rgba(2,8,20,.94));
  border: 1px solid rgba(34,167,255,.18);
  color: transparent !important;
  font-size: 0 !important;
}

.page-template-page-drivers .driver-card .kion-lion-placeholder-img,
.post-type-archive-kion_driver .driver-card .kion-lion-placeholder-img,
.drivers-grid .driver-card .kion-lion-placeholder-img,
.kion-driver-grid .driver-card .kion-lion-placeholder-img {
  display: block !important;
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 12%;
  opacity: .92;
}


/* Kion v3.11.00 - Dynamic content support */
.kion-editable-page-content {
  margin: 18px 0;
  padding: 18px;
  border-radius: 18px;
  border: 1px solid rgba(34,167,255,.18);
  background: rgba(34,167,255,.045);
}


/* Kion v3.11.31 - Revert divider experiment */
.kion-section-title-frame,
.kion-section-line,
.kion-divider-line,
.kion-centered-divider-title {
  display: none !important;
}

.kion-simple-section-heading {
  margin: 0 0 18px !important;
  padding: 0 !important;
  color: #b7ff2a !important;
  font-size: clamp(1.4rem, 2vw, 2rem) !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
  line-height: 1.05 !important;
  text-align: left !important;
  text-transform: none !important;
  text-shadow: none !important;
}

@media (max-width: 900px) {
  .kion-simple-section-heading {
    font-size: 1.3rem !important;
    margin-bottom: 14px !important;
  }
}


/* Kion v3.11.33 - Remove Management/Drivers section headings */
.kion-section-title-frame,
.kion-simple-section-heading {
  display: none !important;
}


/* Kion v3.11.37 - Subtler hero titles */
.hero-copy h1,
.calendar-page-hero h1,
.driver-profile-section h1,
.section-heading h2,
.calendar-heading h2 {
  font-size: clamp(2.1rem, 4.2vw, 4rem) !important;
  line-height: .96 !important;
  letter-spacing: -.045em !important;
  font-weight: 850 !important;
  color: #eef6ff !important;
  text-shadow:
    0 0 14px rgba(34,167,255,.10),
    0 0 8px rgba(166,255,0,.05) !important;
}

.hero-copy p,
.section-heading p,
.calendar-heading p {
  color: rgba(214,224,239,.78) !important;
  max-width: 760px;
}

.eyebrow {
  color: rgba(166,255,0,.78) !important;
  letter-spacing: .14em !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
}

@media (max-width: 900px) {
  .hero-copy h1,
  .calendar-page-hero h1,
  .driver-profile-section h1,
  .section-heading h2,
  .calendar-heading h2 {
    font-size: clamp(1.8rem, 8vw, 2.8rem) !important;
    line-height: 1 !important;
  }
}


/* Kion v3.11.38 - Sticky scroll down arrow */
.kion-scroll-down-indicator {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 80;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  transform: translateX(-50%);
  border-radius: 999px;
  border: 1px solid rgba(34,167,255,.34);
  background: rgba(2,8,20,.58);
  backdrop-filter: blur(10px);
  box-shadow:
    0 0 18px rgba(34,167,255,.14),
    0 0 14px rgba(166,255,0,.08),
    inset 0 0 0 1px rgba(255,255,255,.035);
  cursor: pointer;
  opacity: .72;
  transition:
    opacity .22s ease,
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.kion-scroll-down-indicator:hover {
  opacity: 1;
  transform: translateX(-50%) translateY(-2px);
  border-color: rgba(166,255,0,.46);
  box-shadow:
    0 0 22px rgba(34,167,255,.20),
    0 0 18px rgba(166,255,0,.12),
    inset 0 0 0 1px rgba(255,255,255,.055);
}

.kion-scroll-down-indicator span {
  display: block;
  width: 11px;
  height: 11px;
  border-right: 2px solid rgba(166,255,0,.86);
  border-bottom: 2px solid rgba(34,167,255,.92);
  transform: rotate(45deg) translate(-1px, -1px);
  animation: kionScrollArrowPulse 1.6s ease-in-out infinite;
}

.kion-scroll-down-indicator.is-hidden {
  opacity: 0;
  pointer-events: none;
  transform: translateX(-50%) translateY(8px);
}

@keyframes kionScrollArrowPulse {
  0%, 100% {
    transform: rotate(45deg) translate(-1px, -1px);
    opacity: .55;
  }
  50% {
    transform: rotate(45deg) translate(3px, 3px);
    opacity: 1;
  }
}

@media (max-width: 700px) {
  .kion-scroll-down-indicator {
    width: 38px;
    height: 38px;
    bottom: 16px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kion-scroll-down-indicator span {
    animation: none;
  }
}


/* Kion v3.11.41 - Smart scroll arrow */
.kion-scroll-down-indicator.is-up span {
  transform: rotate(-135deg) translate(-1px, -1px);
}

.kion-scroll-down-indicator.is-up:hover {
  transform: translateX(-50%) translateY(-2px);
}

.kion-scroll-down-indicator.is-up span {
  animation: kionScrollArrowPulseUp 1.6s ease-in-out infinite;
}

@keyframes kionScrollArrowPulseUp {
  0%, 100% {
    transform: rotate(-135deg) translate(-1px, -1px);
    opacity: .55;
  }
  50% {
    transform: rotate(-135deg) translate(-3px, -3px);
    opacity: 1;
  }
}


/* Kion v3.11.44 - Driver Sports Cars focus panel */
.kion-sports-car-focus-panel {
  border-color: rgba(166,255,0,.22);
  background: rgba(166,255,0,.035);
}

.kion-sports-car-focus-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.kion-sports-car-focus-stats span,
.kion-sports-car-chip-grid span {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  border-radius: 13px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.kion-sports-car-focus-stats small,
.kion-sports-car-chip-grid small {
  color: rgba(214,224,239,.58);
  font-size: .7rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 800;
}

.kion-sports-car-focus-stats strong,
.kion-sports-car-chip-grid strong {
  color: #dff3ff;
  font-size: .9rem;
}

.kion-sports-car-chip-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 8px;
  margin: 10px 0 14px;
}

.kion-sports-car-focus-panel h4 {
  margin: 16px 0 8px;
  color: rgba(166,255,0,.86);
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.kion-sports-car-note {
  display: block;
  margin-top: 10px;
  color: rgba(255,210,130,.78);
}


/* Kion v3.11.45 - Sports Cars only driver profile view */
/*
   Hide non-Sports-Cars iRacing/license class tabs and panels by common label/class patterns.
   Keeps Sports Cars/Road visible.
*/
[data-kion-sports-cars-only-profile] .kion-license-tab-button:not([data-class*="sport" i]):not([data-class*="road" i]),
[data-kion-sports-cars-only-profile] .kion-license-tab-button:not([data-license*="sport" i]):not([data-license*="road" i]),
body.single-kion_driver .kion-license-tab-button[data-class*="formula" i],
body.single-kion_driver .kion-license-tab-button[data-class*="oval" i],
body.single-kion_driver .kion-license-tab-button[data-class*="dirt" i],
body.single-kion_driver .kion-license-tab-button[data-license*="formula" i],
body.single-kion_driver .kion-license-tab-button[data-license*="oval" i],
body.single-kion_driver .kion-license-tab-button[data-license*="dirt" i],
body.single-kion_driver .kion-license-tab-panel[data-class*="formula" i],
body.single-kion_driver .kion-license-tab-panel[data-class*="oval" i],
body.single-kion_driver .kion-license-tab-panel[data-class*="dirt" i],
body.single-kion_driver .kion-license-tab-panel[data-license*="formula" i],
body.single-kion_driver .kion-license-tab-panel[data-license*="oval" i],
body.single-kion_driver .kion-license-tab-panel[data-license*="dirt" i] {
  display: none !important;
}

/* Fallback for panels/cards with readable class names */
body.single-kion_driver [class*="formula" i],
body.single-kion_driver [class*="oval" i],
body.single-kion_driver [class*="dirt" i] {
  /* Do not broadly hide layout classes; actual tabs/panels above are targeted. */
}

/* Make sure Sports Cars/Road tabs stay visible */
body.single-kion_driver .kion-license-tab-button[data-class*="sport" i],
body.single-kion_driver .kion-license-tab-button[data-class*="road" i],
body.single-kion_driver .kion-license-tab-button[data-license*="sport" i],
body.single-kion_driver .kion-license-tab-button[data-license*="road" i],
body.single-kion_driver .kion-license-tab-panel[data-class*="sport" i],
body.single-kion_driver .kion-license-tab-panel[data-class*="road" i],
body.single-kion_driver .kion-license-tab-panel[data-license*="sport" i],
body.single-kion_driver .kion-license-tab-panel[data-license*="road" i] {
  display: block !important;
}

/* If the theme renders class buttons by text only, the PHP filter above removes non-sports rows. */
.kion-sports-car-focus-panel::before {
  content: "Sports Cars only";
  display: inline-flex;
  margin-bottom: 10px;
  padding: 5px 8px;
  border-radius: 999px;
  border: 1px solid rgba(166,255,0,.34);
  color: rgba(166,255,0,.88);
  background: rgba(166,255,0,.06);
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
}


/* Kion v3.11.48 - Temporarily show only Sports Car tab */
body.single-kion_driver .kion-license-tabs button:not(:first-child),
body.single-kion_driver .license-tabs button:not(:first-child),
body.single-kion_driver .driver-license-tabs button:not(:first-child),
body.single-kion_driver [class*="license-tabs"] button:not(:first-child),
body.single-kion_driver [class*="license-tab"] button[data-tab*="formula" i],
body.single-kion_driver [class*="license-tab"] button[data-tab*="oval" i],
body.single-kion_driver [class*="license-tab"] button[data-tab*="dirt" i] {
  display: none !important;
}

/* Hide non-sports tab panels/content */
body.single-kion_driver .kion-license-panel:not(:first-child),
body.single-kion_driver .license-panel:not(:first-child),
body.single-kion_driver .driver-license-panel:not(:first-child),
body.single-kion_driver [class*="license-panel"]:not(:first-child),
body.single-kion_driver [data-tab-content*="formula" i],
body.single-kion_driver [data-tab-content*="oval" i],
body.single-kion_driver [data-tab-content*="dirt" i] {
  display: none !important;
}

/* Keep Sports Car panel visible */
body.single-kion_driver .kion-license-panel:first-child,
body.single-kion_driver .license-panel:first-child,
body.single-kion_driver .driver-license-panel:first-child,
body.single-kion_driver [class*="license-panel"]:first-child {
  display: block !important;
}


/* Kion v3.11.52 - Driver profile rating source note */
.kion-profile-rating-source {
  display: block;
  margin-top: 10px;
  color: rgba(214,224,239,.56);
  font-size: .72rem;
  letter-spacing: .02em;
}


/* Kion v3.11.53 - A license blue fill */
.kion-license-a-fill {
  border: 2px solid #006eff !important;
  color: #dff3ff !important;
  background: transparent !important;
}


/* Kion v3.11.54 - License color system */
.kion-license-a-fill {
  border: 2px solid #006eff !important;
  color: #dff3ff !important;
  background: transparent !important;
}

.kion-license-b-fill {
  border: 2px solid #33cc00 !important;
  color: #dff3ff !important;
  background: transparent !important;
}

.kion-license-c-fill {
  border: 2px solid #ffe066 !important;
  color: #ffe066 !important;
  background: transparent !important;
}

.kion-license-d-fill {
  border: 2px solid #ff6600 !important;
  color: #ffb380 !important;
  background: transparent !important;
}

.kion-license-r-fill {
  border: 2px solid #e1251b !important;
  color: #ffb0ab !important;
  background: transparent !important;
}

.kion-license-a-fill,
.kion-license-b-fill,
.kion-license-c-fill,
.kion-license-d-fill,
.kion-license-r-fill {
  padding: 4px 10px !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 900 !important;
  backdrop-filter: blur(4px);
}


/* Kion v3.11.57 - Driver rating source debug */
.kion-rating-source-debug {
  margin: 10px 0;
  padding: 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,190,80,.30);
  background: rgba(255,190,80,.055);
}

.kion-rating-source-debug summary {
  cursor: pointer;
  color: rgba(255,236,205,.95);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.kion-rating-source-debug textarea {
  width: 100%;
  min-height: 260px;
  margin-top: 8px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
  color: rgba(223,243,255,.95);
  font-family: Consolas, Monaco, monospace;
  font-size: 11px;
  line-height: 1.4;
}


/* Kion v3.11.58 - Last personal race result card */
.kion-last-personal-result-card {
  border-color: rgba(34,167,255,.22);
}

.kion-last-result-main {
  margin: 8px 0 12px;
  color: #dff3ff;
  font-weight: 800;
}

.kion-last-result-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 8px;
}

.kion-last-result-grid span {
  padding: 9px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.kion-last-result-grid small {
  display: block;
  color: rgba(214,224,239,.56);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.kion-last-result-grid strong {
  display: block;
  margin-top: 3px;
  color: #dff3ff;
}

.kion-last-result-source {
  display: block;
  margin-top: 10px;
  color: rgba(214,224,239,.52);
  font-size: .72rem;
}


/* Kion v3.11.59 - Last result diagnostics */
.kion-last-result-diagnostics {
  margin: 14px 0 20px;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid rgba(255,190,80,.32);
  background: rgba(255,190,80,.055);
}

.kion-last-result-diagnostics summary {
  cursor: pointer;
  color: rgba(255,236,205,.96);
  font-weight: 900;
  letter-spacing: .02em;
}

.kion-last-result-diagnostics p {
  color: rgba(214,224,239,.72);
  font-size: .84rem;
}

.kion-last-result-diagnostics textarea {
  width: 100%;
  min-height: 360px;
  margin-top: 10px;
  border-radius: 12px;
  background: rgba(0,0,0,.30);
  color: rgba(223,243,255,.94);
  border: 1px solid rgba(255,255,255,.12);
  font-family: Consolas, Monaco, monospace;
  font-size: 12px;
  line-height: 1.4;
}


/* Kion v3.11.62 - Safe last result/activity card */
.kion-last-personal-result-card {
  border-color: rgba(34,167,255,.22);
}

.kion-last-result-main {
  margin: 8px 0 12px;
  color: #dff3ff;
  font-weight: 800;
}

.kion-last-result-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 8px;
}

.kion-last-result-grid span {
  padding: 9px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.kion-last-result-grid small {
  display: block;
  color: rgba(214,224,239,.56);
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.kion-last-result-grid strong {
  display: block;
  margin-top: 3px;
  color: #dff3ff;
}

.kion-last-result-source {
  display: block;
  margin-top: 9px;
  color: rgba(214,224,239,.52);
  font-size: .72rem;
}


/* Kion v3.11.76 - Safe cleaned driver profile polish */
body.single-kion_driver.kion-driver-cleaned-safe .driver-profile-content,
body.single-kion_driver.kion-driver-cleaned-safe .driver-profile-section {
  gap: 18px;
}

body.single-kion_driver.kion-driver-cleaned-safe .kion-data-panel {
  border-color: rgba(34,167,255,.18);
  background:
    radial-gradient(circle at 12% 0%, rgba(34,167,255,.10), transparent 34%),
    rgba(4,12,28,.66);
}

body.single-kion_driver.kion-driver-cleaned-safe .driver-stats,
body.single-kion_driver.kion-driver-cleaned-safe .driver-meta-grid {
  margin-top: 16px;
}


/* Kion v3.11.79 - About page styles */
.kion-about-page{max-width:1180px;margin:0 auto;padding:clamp(28px,5vw,64px) 18px}
.kion-about-hero{position:relative;padding:clamp(24px,4vw,44px);border-radius:28px;border:1px solid rgba(34,167,255,.22);background:radial-gradient(circle at 15% 0%,rgba(34,167,255,.20),transparent 36%),radial-gradient(circle at 86% 16%,rgba(166,255,0,.13),transparent 34%),rgba(4,12,28,.76);box-shadow:0 22px 60px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.035);overflow:hidden}
.kion-about-hero:before{content:"";position:absolute;inset:0;height:2px;background:linear-gradient(90deg,rgba(34,167,255,.5),rgba(166,255,0,.75),transparent 56%)}
.kion-about-kicker{display:inline-flex;margin-bottom:10px;color:rgba(166,255,0,.9);font-size:.72rem;font-weight:950;letter-spacing:.15em;text-transform:uppercase}
.kion-about-hero h1{max-width:820px;margin:0;color:#eef6ff;font-size:clamp(2.2rem,5vw,5rem);line-height:.95;letter-spacing:-.055em}
.kion-about-hero p{max-width:760px;margin:18px 0 0;color:rgba(214,224,239,.76);font-size:clamp(1rem,1.45vw,1.15rem);line-height:1.65}
.kion-about-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:18px;margin-top:18px}
.kion-about-main,.kion-about-side-card{border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.038);box-shadow:0 16px 44px rgba(0,0,0,.18)}
.kion-about-main{padding:clamp(22px,3vw,34px)}
.kion-about-main h2,.kion-about-side-card h3{margin:0 0 12px;color:#eef6ff;letter-spacing:-.025em}
.kion-about-main p,.kion-about-side-card p{color:rgba(214,224,239,.74);line-height:1.7}
.kion-about-side{display:grid;gap:12px}
.kion-about-side-card{padding:20px}
.kion-about-read-more-wrap{display:flex;justify-content:flex-end;margin-top:14px}
.kion-about-read-more-pill{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 15px;border-radius:999px;border:1px solid rgba(166,255,0,.65);background:rgba(166,255,0,.12);color:rgba(210,255,80,.98);font-size:.78rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;box-shadow:0 0 28px rgba(166,255,0,.13);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.kion-about-read-more-pill:hover{transform:translateY(-1px);background:rgba(166,255,0,.18);box-shadow:0 0 34px rgba(166,255,0,.22);color:#eaffb8}
@media(max-width:860px){.kion-about-grid{grid-template-columns:1fr}}





/* Kion v3.11.83 - Unified About page/menu */
.primary-nav .menu-item-kion-about,
.primary-nav .menu-item-kion-about a,
.site-header .menu-item-kion-about,
.site-header .menu-item-kion-about a {
  font: inherit;
}

.primary-nav .menu-item-kion-about a {
  display: inline-flex;
  align-items: center;
}

/* About page uses the same global page rhythm as Drivers/Calendar/Partners */
.about-page-hero.kion-page-hero {
  margin-top: 0;
}

.kion-about-surface {
  padding-top: clamp(34px, 5vw, 70px);
}

.kion-about-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
  gap: 18px;
  align-items: start;
}

.kion-about-copy-card,
.kion-about-feature-card {
  padding: clamp(20px, 2.4vw, 30px);
}

.kion-about-copy-card p,
.kion-about-feature-card p {
  color: rgba(214,224,239,.74);
  line-height: 1.7;
}

.kion-about-cards {
  display: grid;
  gap: 12px;
}

.kion-about-feature-card h3 {
  margin: 6px 0 10px;
  color: #eef6ff;
  letter-spacing: -.025em;
}

@media (max-width: 860px) {
  .kion-about-layout {
    grid-template-columns: 1fr;
  }
}





/* Kion v3.11.85 - About header/menu unified with fixed pages */
body.kion-about-page-body .site-header,
body.kion-about-page-body header.site-header {
  position: relative;
  z-index: 50;
}

body.kion-about-page-body .site-header .container,
body.kion-about-page-body .nav-wrap {
  max-width: var(--container, 1180px);
  margin-inline: auto;
}

body.kion-about-page-body .primary-nav ul,
body.kion-about-page-body #primary-menu ul,
body.kion-about-page-body .site-header nav ul {
  display: flex;
  align-items: center;
}

body.kion-about-page-body .primary-nav li,
body.kion-about-page-body #primary-menu li,
body.kion-about-page-body .site-header nav li {
  list-style: none;
}

body.kion-about-page-body .primary-nav a,
body.kion-about-page-body #primary-menu a,
body.kion-about-page-body .site-header nav a {
  text-decoration: none;
}

body.kion-about-page-body .menu-item-kion-about a {
  color: inherit;
  background: inherit;
  border: inherit;
  box-shadow: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

body.kion-about-page-body .site-main {
  padding-top: 0;
}

body.kion-about-page-body .about-page-hero {
  margin-top: 0;
}





/* Kion v3.11.90 - Clean About page layout */
.kion-about-surface {
  padding-top: clamp(34px, 5vw, 70px);
}

.kion-about-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
  gap: 18px;
  align-items: start;
}

.kion-about-copy-card,
.kion-about-feature-card {
  padding: clamp(20px, 2.4vw, 30px);
}

.kion-about-copy-card p,
.kion-about-feature-card p {
  color: rgba(214,224,239,.74);
  line-height: 1.7;
}

.kion-about-cards {
  display: grid;
  gap: 12px;
}

.kion-about-feature-card h3 {
  margin: 6px 0 10px;
  color: #eef6ff;
  letter-spacing: -.025em;
}

@media (max-width: 860px) {
  .kion-about-layout {
    grid-template-columns: 1fr;
  }
}


/* Kion v3.11.91 - About from drivers layout */
.about-directory-section {
  padding-top: clamp(34px, 5vw, 70px);
}

.about-driver-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .8fr);
  gap: 18px;
  align-items: start;
}

.about-main-card,
.about-feature-card {
  padding: clamp(20px, 2.4vw, 30px);
}

.about-main-card p,
.about-feature-card p {
  color: rgba(214,224,239,.74);
  line-height: 1.7;
}

.about-side-grid {
  display: grid;
  gap: 12px;
}

.about-feature-card h3 {
  margin: 6px 0 10px;
  color: #eef6ff;
  letter-spacing: -.025em;
}

@media (max-width: 860px) {
  .about-driver-layout {
    grid-template-columns: 1fr;
  }
}


/* Kion v3.11.92 - Standard page layout */
.kion-standard-page-content {
  padding-top: clamp(34px, 5vw, 70px);
}

.kion-standard-content-card {
  padding: clamp(22px, 3vw, 38px);
}

.kion-standard-content-card h1,
.kion-standard-content-card h2,
.kion-standard-content-card h3 {
  color: #eef6ff;
  letter-spacing: -.025em;
}

.kion-standard-content-card p,
.kion-standard-content-card li {
  color: rgba(214,224,239,.76);
  line-height: 1.75;
}

.kion-standard-content-card a {
  color: rgba(166,255,0,.92);
}

.kion-standard-content-card > *:first-child {
  margin-top: 0;
}

.kion-standard-content-card > *:last-child {
  margin-bottom: 0;
}


/* Kion v3.11.93 cleanup: never show legacy About read-more pill on Partners page. */
body.kion-page-partners .kion-about-read-more-wrap,
body.kion-page-partners .forced-kion-readmore-wrap,
body.kion-page-partners .kion-about-read-more-pill,
body.kion-page-partners .forced-kion-readmore {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* Kion v3.11.94 - About must visually behave as a Kion Standard Page, not as legacy About/Drivers. */
body.kion-about-standard-locked .kion-standard-page-hero {
    margin-top: 0;
}

body.kion-about-standard-locked .kion-standard-page-content {
    padding-top: clamp(34px, 5vw, 70px);
}

body.kion-about-standard-locked .kion-standard-content-card {
    width: 100%;
}

body.kion-about-standard-locked .kion-about-page,
body.kion-about-standard-locked .kion-about-hero,
body.kion-about-standard-locked .kion-about-grid,
body.kion-about-standard-locked .about-directory-section,
body.kion-about-standard-locked .about-driver-layout {
    all: unset;
}

/* Kion v3.11.95 - About fixed route, visually aligned with Partners/Drivers/Calendar. */
body.kion-about-fixed-route .kion-about-page-hero {
  min-height: auto;
  padding-top: clamp(56px, 8vw, 104px);
  padding-bottom: clamp(48px, 7vw, 92px);
  margin-top: 0;
}
body.kion-about-fixed-route .kion-about-page-surface {
  padding-top: clamp(34px, 5vw, 70px);
}
.kion-about-standard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .75fr);
  gap: 22px;
  align-items: start;
}
.kion-about-standard-side {
  display: grid;
  gap: 14px;
}
.kion-about-standard-card {
  width: 100%;
}
.kion-about-standard-card h1,
.kion-about-standard-card h2,
.kion-about-standard-card h3 {
  color: #eef6ff;
  letter-spacing: -.025em;
}
.kion-about-standard-card p,
.kion-about-standard-card li {
  color: rgba(214,224,239,.76);
  line-height: 1.75;
}
.kion-about-standard-card > *:first-child { margin-top: 0; }
.kion-about-standard-card > *:last-child { margin-bottom: 0; }
body.kion-about-fixed-route .kion-about-read-more-wrap,
body.kion-about-fixed-route .forced-kion-readmore-wrap,
body.kion-about-fixed-route .kion-about-read-more-pill,
body.kion-about-fixed-route .forced-kion-readmore {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
@media (max-width: 860px) {
  .kion-about-standard-grid { grid-template-columns: 1fr; }
}


/* Kion v3.11.98: homepage About read-more belongs bottom-right inside .container.two-column. */
.kion-home-about-grid {
    position: relative;
}
.kion-home-about-readmore-placement {
    grid-column: 1 / -1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: -18px;
}
.kion-home-readmore-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 15px;
    border-radius: 999px;
    border: 1px solid rgba(166,255,0,.65);
    background: rgba(166,255,0,.12);
    color: rgba(210,255,80,.98);
    font-size: .78rem;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
    text-decoration: none;
    box-shadow: 0 0 28px rgba(166,255,0,.13);
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.kion-home-readmore-pill:hover {
    transform: translateY(-1px);
    background: rgba(166,255,0,.18);
    box-shadow: 0 0 34px rgba(166,255,0,.22);
    color: #eaffb8;
}
body.home .forced-kion-readmore-wrap,
body.front-page .forced-kion-readmore-wrap,
body.home .forced-kion-readmore,
body.front-page .forced-kion-readmore {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
@media (max-width: 860px) {
    .kion-home-about-readmore-placement {
        justify-content: flex-start;
        margin-top: 0;
    }
}


/* Kion v3.12.00 - safe backend line breaks
   Keeps original template markup intact; only preserves newlines on selected backend text paragraphs. */
.kion-preserve-lines {
    white-space: pre-line;
}

/* Kion v3.12.01 - align homepage About intro with the top of the About title. */
@media (min-width: 861px) {
    .kion-home-about-grid > p.kion-preserve-lines {
        padding-top: 34px;
        margin-top: 0;
    }
}



/* Kion v3.12.03 - keep frontpage role pill order + Team Owner blue accent, but center badges. */
.kion-frontpage-role-badges {
    justify-content: center !important;
    align-self: stretch;
    width: 100%;
}
.kion-frontpage-role-badges .kion-role-pill {
    order: 50;
}
.kion-frontpage-role-badges .kion-role-pill--team_owner {
    order: 1;
    border-color: rgba(26,167,255,.88) !important;
    background: linear-gradient(180deg, rgba(26,167,255,.18), rgba(26,167,255,.07)) !important;
    color: #d8f3ff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 16px rgba(26,167,255,.16) !important;
}
.kion-frontpage-role-badges .kion-role-pill--management { order: 2; }
.kion-frontpage-role-badges .kion-role-pill--driver { order: 3; }
.kion-frontpage-role-badges .kion-role-pill--social_media { order: 4; }
.kion-frontpage-role-badges .kion-role-pill--engineer { order: 5; }
.kion-frontpage-role-badges .kion-role-pill--coach { order: 6; }


/* Kion v3.12.04 - Center role pills exactly underneath the driver name on frontpage cards. */
.kion-frontpage-driver-card .kion-frontpage-driver-link {
    align-items: center !important;
    text-align: center !important;
}
.kion-frontpage-driver-card .kion-frontpage-driver-link > h3 {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    align-self: center !important;
}
.kion-frontpage-driver-card .kion-frontpage-role-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    align-content: center !important;
    align-self: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
    position: relative !important;
    left: auto !important;
    transform: none !important;
}
.kion-frontpage-driver-card .kion-frontpage-role-badges .kion-role-pill {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Kion v3.12.05 - Compact premium roster cards for /drivers/ only. */
body.page-template-page-drivers .drivers-directory-section .kion-unified-driver-grid,
body.kion-drivers-directory .drivers-directory-section .kion-unified-driver-grid {
    grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
    gap: 16px;
}
body.page-template-page-drivers .kion-driver-directory-card,
body.kion-drivers-directory .kion-driver-directory-card {
    border-radius: 20px;
    padding: 0;
    gap: 0;
    min-height: 0;
    border-left-width: 2px;
}
body.page-template-page-drivers .kion-driver-card-media,
body.kion-drivers-directory .kion-driver-card-media {
    min-height: 176px;
    padding: 12px 12px 10px;
    background:
        radial-gradient(circle at 50% 12%, rgba(183,255,42,.12), transparent 10rem),
        radial-gradient(circle at 70% 28%, rgba(26,167,255,.12), transparent 11rem),
        rgba(2, 6, 12, .48);
}
body.page-template-page-drivers .kion-driver-card-image,
body.page-template-page-drivers .kion-driver-card-media img,
body.page-template-page-drivers .kion-driver-directory-card img.wp-post-image,
body.kion-drivers-directory .kion-driver-card-image,
body.kion-drivers-directory .kion-driver-card-media img,
body.kion-drivers-directory .kion-driver-directory-card img.wp-post-image {
    max-width: 230px !important;
    height: 158px !important;
    max-height: 158px !important;
    border-radius: 16px;
}
body.page-template-page-drivers .kion-driver-card-body,
body.kion-drivers-directory .kion-driver-card-body {
    padding: 14px;
    gap: 9px;
}
body.page-template-page-drivers .kion-driver-compact-topline,
body.kion-drivers-directory .kion-driver-compact-topline {
    margin-bottom: 0;
    gap: 8px;
}
body.page-template-page-drivers .kion-driver-compact-topline > span:first-child,
body.kion-drivers-directory .kion-driver-compact-topline > span:first-child {
    font-size: 9px;
    letter-spacing: .16em;
}
body.page-template-page-drivers .kion-driver-card-body h3,
body.kion-drivers-directory .kion-driver-card-body h3 {
    margin: 0;
    font-size: clamp(18px, 1.4vw, 21px);
    line-height: 1.12;
}
body.page-template-page-drivers .kion-driver-directory-roles,
body.kion-drivers-directory .kion-driver-directory-roles {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    margin: 0;
}
body.page-template-page-drivers .kion-driver-directory-role,
body.kion-drivers-directory .kion-driver-directory-role {
    display: inline-flex;
    align-items: center;
    min-height: 23px;
    padding: 4px 8px;
    border-radius: 999px;
    border: 1px solid rgba(183,255,42,.24);
    background: rgba(183,255,42,.075);
    color: rgba(244,248,255,.90);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .02em;
    line-height: 1;
}
body.page-template-page-drivers .kion-driver-directory-role.role-team_owner,
body.kion-drivers-directory .kion-driver-directory-role.role-team_owner {
    border-color: rgba(26,167,255,.76);
    background: rgba(26,167,255,.12);
    box-shadow: inset 0 0 0 1px rgba(26,167,255,.10), 0 0 18px rgba(26,167,255,.08);
}
body.page-template-page-drivers .kion-driver-meta-pills,
body.kion-drivers-directory .kion-driver-meta-pills {
    gap: 6px;
}
body.page-template-page-drivers .kion-driver-meta-pills span,
body.kion-drivers-directory .kion-driver-meta-pills span {
    min-height: 23px;
    padding: 4px 8px;
    font-size: 10px;
    border-radius: 10px;
}
body.page-template-page-drivers .kion-driver-card-stats,
body.kion-drivers-directory .kion-driver-card-stats {
    gap: 7px;
    margin-top: 2px;
}
body.page-template-page-drivers .kion-driver-card-stats > div,
body.kion-drivers-directory .kion-driver-card-stats > div {
    padding: 9px;
    border-radius: 13px;
}
body.page-template-page-drivers .kion-driver-card-stats small,
body.kion-drivers-directory .kion-driver-card-stats small {
    font-size: 9px;
    letter-spacing: .05em;
}
body.page-template-page-drivers .kion-driver-card-stats strong,
body.kion-drivers-directory .kion-driver-card-stats strong {
    margin-top: 4px;
    font-size: 15px;
}
body.page-template-page-drivers .kion-driver-actions,
body.kion-drivers-directory .kion-driver-actions {
    margin-top: 2px;
    gap: 8px;
}
body.page-template-page-drivers .kion-driver-actions .button,
body.kion-drivers-directory .kion-driver-actions .button {
    padding: 9px 12px;
    min-height: 0;
    font-size: 11px;
    border-radius: 12px;
}
@media (max-width: 760px) {
    body.page-template-page-drivers .drivers-directory-section .kion-unified-driver-grid,
    body.kion-drivers-directory .drivers-directory-section .kion-unified-driver-grid {
        grid-template-columns: 1fr;
    }
    body.page-template-page-drivers .kion-driver-card-media,
    body.kion-drivers-directory .kion-driver-card-media {
        min-height: 210px;
    }
    body.page-template-page-drivers .kion-driver-card-image,
    body.page-template-page-drivers .kion-driver-card-media img,
    body.page-template-page-drivers .kion-driver-directory-card img.wp-post-image,
    body.kion-drivers-directory .kion-driver-card-image,
    body.kion-drivers-directory .kion-driver-card-media img,
    body.kion-drivers-directory .kion-driver-directory-card img.wp-post-image {
        height: 190px !important;
        max-height: 190px !important;
    }
}


/* Kion v3.12.06 - Drivers page: role pills + subtle sync text */
.drivers-directory-section .kion-drivers-sync-text,
body.page-template-page-drivers .kion-drivers-sync-text,
body.kion-drivers-directory .kion-drivers-sync-text {
    margin: 6px 0 8px !important;
    color: var(--kion-lime, #b6ff00) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .045em !important;
    text-transform: uppercase !important;
    opacity: .86 !important;
}
.drivers-directory-section .kion-driver-directory-roles,
body.page-template-page-drivers .kion-driver-directory-roles,
body.kion-drivers-directory .kion-driver-directory-roles {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 2px 0 0 !important;
}
.drivers-directory-section .kion-driver-directory-role,
body.page-template-page-drivers .kion-driver-directory-role,
body.kion-drivers-directory .kion-driver-directory-role {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 22px !important;
    padding: 4px 9px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(183,255,42,.52) !important;
    background: linear-gradient(180deg, rgba(183,255,42,.11), rgba(26,167,255,.055)) !important;
    color: #eaffc2 !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 0 12px rgba(183,255,42,.08) !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    letter-spacing: .045em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
}
.drivers-directory-section .kion-driver-directory-role.role-team_owner,
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--team_owner,
body.page-template-page-drivers .kion-driver-directory-role.role-team_owner,
body.page-template-page-drivers .kion-driver-directory-role.kion-role-pill--team_owner,
body.kion-drivers-directory .kion-driver-directory-role.role-team_owner,
body.kion-drivers-directory .kion-driver-directory-role.kion-role-pill--team_owner {
    border-color: rgba(26,167,255,.88) !important;
    background: linear-gradient(180deg, rgba(26,167,255,.18), rgba(26,167,255,.07)) !important;
    color: #d8f3ff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 0 16px rgba(26,167,255,.16) !important;
}
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--team_owner { order: 1; }
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--management { order: 2; }
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--driver { order: 3; }
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--social_media { order: 4; }
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--engineer { order: 5; }
.drivers-directory-section .kion-driver-directory-role.kion-role-pill--coach { order: 6; }
.drivers-directory-section .driver-data-source,
body.page-template-page-drivers .driver-data-source,
body.kion-drivers-directory .driver-data-source {
    display: none !important;
}

/* v3.12.09 Drivers directory cleanup: flag before name, remove nationality/id/offset pills */
.drivers-directory-section .kion-driver-name-with-flag,
body.page-template-page-drivers .kion-driver-name-with-flag,
body.kion-drivers-directory .kion-driver-name-with-flag {
    margin: 0 !important;
}
.drivers-directory-section .kion-driver-name-with-flag a,
body.page-template-page-drivers .kion-driver-name-with-flag a,
body.kion-drivers-directory .kion-driver-name-with-flag a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: var(--kion-text, #f4f8ff) !important;
    text-decoration: none !important;
}
.drivers-directory-section .kion-driver-country-flag,
body.page-template-page-drivers .kion-driver-country-flag,
body.kion-drivers-directory .kion-driver-country-flag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 1.35em !important;
    min-width: 1.35em !important;
    line-height: 1 !important;
    font-size: .92em !important;
    filter: saturate(1.08) drop-shadow(0 0 7px rgba(183,255,42,.12));
}
.drivers-directory-section .kion-driver-focus-pill-row,
body.page-template-page-drivers .kion-driver-focus-pill-row,
body.kion-drivers-directory .kion-driver-focus-pill-row {
    margin-top: -1px !important;
}
.drivers-directory-section .kion-driver-focus-pill-row span,
body.page-template-page-drivers .kion-driver-focus-pill-row span,
body.kion-drivers-directory .kion-driver-focus-pill-row span {
    border-color: rgba(26,167,255,.24) !important;
    background: rgba(26,167,255,.055) !important;
    color: rgba(244,248,255,.72) !important;
}


/* Kion v3.12.09 - Drivers page: keep focus/class in the top-right status pill, hide duplicate lower focus pill */
body.page-template-page-drivers .kion-driver-focus-pill-row,
body.kion-drivers-directory .kion-driver-focus-pill-row,
.drivers-directory-section .kion-driver-focus-pill-row {
    display: none !important;
}

/* Kion v3.12.12 - Contact page + Discord webhook form */
.kion-contact-container { max-width: 1180px; }
.kion-contact-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; align-items: start; max-width: 920px; margin: 0 auto; }
.kion-contact-form { display: flex; flex-direction: column; gap: 18px; }
.kion-contact-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.kion-contact-form label { display: flex; flex-direction: column; gap: 8px; color: var(--kion-text); font-weight: 900; letter-spacing: .02em; }
.kion-contact-form label span { color: rgba(234, 243, 255, .9); font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
.kion-contact-form input,
.kion-contact-form select,
.kion-contact-form textarea { width: 100%; box-sizing: border-box; border: 1px solid rgba(26, 167, 255, .24); background: rgba(2, 8, 18, .78); color: #fff; border-radius: 14px; padding: 13px 14px; outline: none; font: inherit; }
.kion-contact-form textarea { resize: vertical; min-height: 170px; }
.kion-contact-form input:focus,
.kion-contact-form select:focus,
.kion-contact-form textarea:focus { border-color: var(--kion-lime); box-shadow: 0 0 0 3px rgba(183,255,42,.10); }
.kion-contact-form .button { align-self: flex-start; cursor: pointer; }
.kion-contact-help-text { margin: -8px 0 2px; color: rgba(234, 243, 255, .62); font-size: 13px; line-height: 1.55; }
.kion-contact-form label span em { color: var(--kion-lime); font-style: normal; font-weight: 900; text-transform: none; letter-spacing: .02em; opacity: .9; }
.kion-contact-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.kion-contact-notice { margin: 0 0 22px; padding: 16px 18px; font-weight: 900; }
.kion-contact-notice-success { border-color: rgba(183,255,42,.45); color: var(--kion-lime); }
.kion-contact-notice-error { border-color: rgba(255,90,90,.45); color: #ffb3b3; }
.kion-contact-side-card h3 { margin-top: 12px; }
.kion-contact-config-status { margin-top: 18px; font-weight: 900; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
.kion-contact-config-status.is-ready { color: var(--kion-lime); }
.kion-contact-config-status.is-pending { color: rgba(234, 243, 255, .68); }
@media (max-width: 860px) { .kion-contact-grid, .kion-contact-field-grid { grid-template-columns: 1fr; } .kion-contact-form .button { width: 100%; } }


/* Kion v3.12.21 - normalize About header menu item
   About must use the exact same header nav styling as all other menu items.
   This overrides older About-specific experiments that could make it look like a pill/button. */
.site-header .primary-nav li.menu-item-about > a,
.site-header .primary-nav li.menu-item-kion-about > a,
.primary-nav li.menu-item-about > a,
.primary-nav li.menu-item-kion-about > a {
    display: inline-flex;
    align-items: center;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: var(--kion-muted);
    font-weight: 800;
    font-size: 13px;
    line-height: normal;
    letter-spacing: .04em;
    text-transform: uppercase;
    text-decoration: none;
    text-shadow: none;
}
.site-header .primary-nav li.menu-item-about > a:hover,
.site-header .primary-nav li.menu-item-kion-about > a:hover,
.primary-nav li.menu-item-about > a:hover,
.primary-nav li.menu-item-kion-about > a:hover {
    color: var(--kion-lime);
    text-shadow: 0 0 16px rgba(183,255,42,.4);
}
.site-header .primary-nav li.menu-item-about.current-menu-item > a,
.site-header .primary-nav li.menu-item-kion-about.current-menu-item > a,
.primary-nav li.menu-item-about.current-menu-item > a,
.primary-nav li.menu-item-kion-about.current-menu-item > a {
    color: var(--kion-lime) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* Kion v3.12.22 - Premium footer navigation cards */
.site-footer .footer-menu,
.site-footer ul.footer-menu,
.site-footer #footer-menu-list {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.site-footer .footer-menu li,
.site-footer .footer-menu .menu-item,
.site-footer .footer-menu-item {
  margin: 0;
  padding: 0;
}

.site-footer .footer-menu a,
.site-footer #footer-menu-list a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 11px 14px 11px 16px !important;
  border-radius: 15px;
  border: 1px solid rgba(59, 178, 255, .24);
  background:
    linear-gradient(135deg, rgba(7, 18, 34, .86), rgba(2, 8, 16, .72));
  color: rgba(238, 246, 255, .86) !important;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .075em;
  font-size: .74rem !important;
  font-weight: 900;
  line-height: 1.1;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .045),
    0 10px 26px rgba(0, 0, 0, .18);
  overflow: hidden;
  transition: border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.site-footer .footer-menu a::before,
.site-footer #footer-menu-list a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  bottom: 9px;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--kion-lime, #b7ff2a), rgba(59, 178, 255, .86));
  box-shadow: 0 0 16px rgba(183, 255, 42, .35);
}

.site-footer .footer-menu a::after,
.site-footer #footer-menu-list a::after {
  content: "›";
  color: var(--kion-lime, #b7ff2a);
  font-size: 1.1rem;
  line-height: 1;
  opacity: .78;
  transform: translateX(0);
  transition: transform .18s ease, opacity .18s ease;
}

.site-footer .footer-menu a:hover,
.site-footer .footer-menu a:focus-visible,
.site-footer #footer-menu-list a:hover,
.site-footer #footer-menu-list a:focus-visible {
  color: #ffffff !important;
  border-color: rgba(183, 255, 42, .46);
  background:
    radial-gradient(circle at 18% 50%, rgba(183, 255, 42, .12), transparent 16rem),
    linear-gradient(135deg, rgba(10, 28, 50, .94), rgba(3, 12, 24, .86));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .06),
    0 0 0 1px rgba(183, 255, 42, .08),
    0 14px 34px rgba(0, 0, 0, .26);
  transform: translateX(3px);
}

.site-footer .footer-menu a:hover::after,
.site-footer .footer-menu a:focus-visible::after,
.site-footer #footer-menu-list a:hover::after,
.site-footer #footer-menu-list a:focus-visible::after {
  opacity: 1;
  transform: translateX(3px);
}

.site-footer .footer-menu .current-menu-item > a,
.site-footer #footer-menu-list .current-menu-item > a {
  border-color: rgba(183, 255, 42, .55);
  color: #ffffff !important;
  background:
    radial-gradient(circle at top left, rgba(183, 255, 42, .15), transparent 15rem),
    linear-gradient(135deg, rgba(7, 22, 39, .96), rgba(2, 8, 16, .88));
}

@media (min-width: 821px) and (max-width: 1080px) {
  .site-footer .footer-menu,
  .site-footer ul.footer-menu,
  .site-footer #footer-menu-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .site-footer .footer-menu,
  .site-footer ul.footer-menu,
  .site-footer #footer-menu-list {
    display: grid !important;
    grid-template-columns: 1fr;
    justify-content: stretch;
    gap: 9px;
  }

  .site-footer .footer-menu a,
  .site-footer #footer-menu-list a {
    justify-content: space-between;
    width: 100%;
    font-size: .72rem !important;
  }
}

/* Kion v3.12.23 - Recruitment hash active-state + Stint Planner blue accent */
.site-header .primary-nav li.menu-item-stint-planner > a,
.primary-nav li.menu-item-stint-planner > a {
  color: #ffffff !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(59, 178, 255, .62) !important;
  background:
    radial-gradient(circle at 20% 50%, rgba(59, 178, 255, .20), transparent 9rem),
    linear-gradient(135deg, rgba(8, 40, 74, .92), rgba(2, 14, 29, .78)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .08),
    0 0 18px rgba(26, 167, 255, .16) !important;
}

.site-header .primary-nav li.menu-item-stint-planner > a:hover,
.site-header .primary-nav li.menu-item-stint-planner.current-menu-item > a,
.primary-nav li.menu-item-stint-planner > a:hover,
.primary-nav li.menu-item-stint-planner.current-menu-item > a {
  color: #ffffff !important;
  border-color: rgba(183, 255, 42, .58) !important;
  background:
    radial-gradient(circle at 20% 50%, rgba(183, 255, 42, .14), transparent 9rem),
    linear-gradient(135deg, rgba(10, 54, 96, .96), rgba(3, 20, 40, .88)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .10),
    0 0 0 1px rgba(183, 255, 42, .08),
    0 0 22px rgba(26, 167, 255, .28) !important;
}

/* Kion v3.12.24 - Logged-in footer member navigation */
@media (min-width: 1081px) {
  .site-footer .footer-grid:has(.footer-member-navigation-column) {
    grid-template-columns: minmax(0, 1.15fr) minmax(250px, .9fr) minmax(250px, .9fr);
  }
}

.site-footer .member-footer-menu a,
.site-footer #member-footer-menu-list a {
  border-color: rgba(59, 178, 255, .38);
  background:
    radial-gradient(circle at 15% 50%, rgba(59, 178, 255, .14), transparent 14rem),
    linear-gradient(135deg, rgba(5, 24, 46, .92), rgba(2, 8, 16, .78));
}

.site-footer .member-footer-menu a::before,
.site-footer #member-footer-menu-list a::before {
  background: linear-gradient(180deg, rgba(59, 178, 255, 1), rgba(183, 255, 42, .86));
  box-shadow: 0 0 16px rgba(59, 178, 255, .34);
}

.site-footer .member-footer-menu a::after,
.site-footer #member-footer-menu-list a::after {
  color: rgba(59, 178, 255, 1);
}

.site-footer .member-footer-menu a:hover,
.site-footer .member-footer-menu a:focus-visible,
.site-footer #member-footer-menu-list a:hover,
.site-footer #member-footer-menu-list a:focus-visible {
  border-color: rgba(59, 178, 255, .72);
  background:
    radial-gradient(circle at 18% 50%, rgba(59, 178, 255, .18), transparent 15rem),
    linear-gradient(135deg, rgba(9, 39, 72, .96), rgba(3, 12, 24, .88));
}

.site-footer .footer-member-navigation-column h4::after {
  content: "Members only";
  display: inline-flex;
  margin-left: 10px;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid rgba(59, 178, 255, .36);
  color: rgba(59, 178, 255, 1);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  vertical-align: middle;
}


/* Kion v3.12.25 - Footer contact column removed; public/member navigation balanced */
.site-footer .footer-grid > div { min-width: 0; }
@media (max-width: 1080px) {
  .site-footer .footer-grid,
  .site-footer .footer-grid:has(.footer-member-navigation-column) {
    grid-template-columns: 1fr;
  }
}

/* Kion v3.12.28: extended About page content sections and optional card kickers. */
.kion-about-standard-main-stack {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.kion-about-content-section .eyebrow {
  display: inline-flex;
  margin-bottom: 10px;
}
.kion-about-content-section h3 {
  margin: 0 0 12px;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
}
.kion-about-content-section .kion-preserve-lines p {
  margin: 0 0 1em;
}
.kion-about-content-section .kion-preserve-lines p:last-child {
  margin-bottom: 0;
}

/* Kion v3.12.31 - Safe rich text accents and bullets for backend textarea content */
.kion-content-text,
.kion-rich-text {
  color: inherit;
}
.kion-content-text p,
.kion-rich-text p {
  margin: 0 0 1em;
}
.kion-content-text p:last-child,
.kion-rich-text p:last-child {
  margin-bottom: 0;
}
.kion-text-accent {
  font-weight: 800;
}
.kion-text-accent-lime {
  color: var(--lime, #b7ff2a);
  text-shadow: 0 0 14px rgba(183, 255, 42, .16);
}
.kion-text-accent-blue {
  color: var(--blue, #3bb2ff);
  text-shadow: 0 0 14px rgba(59, 178, 255, .16);
}
.kion-content-bullets {
  margin: .85rem 0 1rem;
  padding: 0;
  list-style: none;
  display: grid;
  gap: .55rem;
}
.kion-content-bullets:last-child {
  margin-bottom: 0;
}
.kion-content-bullets li {
  position: relative;
  padding-left: 1.35rem;
  line-height: 1.65;
}
.kion-content-bullets li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .72em;
  width: .42rem;
  height: .42rem;
  border-radius: 999px;
  background: linear-gradient(135deg, #b7ff2a, #3bb2ff);
  box-shadow: 0 0 14px rgba(183, 255, 42, .28);
}
.kion-about-standard-card .kion-content-bullets,
.kion-about-content-section .kion-content-bullets {
  margin-top: .75rem;
}


/* Kion v3.12.34 - Contact form anti-spam confirmation */
.kion-contact-anti-spam {
    display: grid;
    gap: 12px;
    padding: 15px;
    border: 1px solid rgba(26, 167, 255, .22);
    border-radius: 18px;
    background: rgba(2, 8, 18, .42);
}
.kion-contact-form .kion-contact-confirm {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 11px;
    margin: 0;
}
.kion-contact-form .kion-contact-confirm input[type="checkbox"] {
    width: auto;
    min-width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--kion-lime);
}
.kion-contact-form .kion-contact-confirm span {
    text-transform: none;
    letter-spacing: .02em;
    font-size: 14px;
    line-height: 1.45;
    color: rgba(234, 243, 255, .88);
}
.kion-contact-anti-spam .kion-contact-help-text {
    margin: -4px 0 0;
}

/* Kion v3.12.36 - Rich text support on homepage textarea fields */
.hero-copy .kion-content-text,
.section-heading .kion-content-text,
.cta-box .kion-content-text,
.kion-home-about-grid > .kion-content-text {
  color: rgba(214,224,239,.78) !important;
  max-width: 760px;
  font-size: 1rem;
  line-height: 1.7;
}
.hero-copy .kion-content-text {
  max-width: 720px;
}
.kion-home-about-grid > .kion-content-text {
  align-self: start;
}
.cta-box .kion-content-text {
  margin: 0 auto;
}
.hero-copy .kion-content-text p,
.section-heading .kion-content-text p,
.cta-box .kion-content-text p,
.kion-home-about-grid > .kion-content-text p {
  margin: 0 0 1em;
}
.hero-copy .kion-content-text p:last-child,
.section-heading .kion-content-text p:last-child,
.cta-box .kion-content-text p:last-child,
.kion-home-about-grid > .kion-content-text p:last-child {
  margin-bottom: 0;
}


/* v3.12.38: Homepage Main Partner blue glow */
#partners .partner-card.is-main-partner {
  position: relative;
  border-color: rgba(64, 169, 255, .58);
  background:
    radial-gradient(circle at 50% 0%, rgba(64, 169, 255, .18), transparent 46%),
    linear-gradient(145deg, rgba(5,13,24,.94), rgba(8,30,58,.72));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 0 1px rgba(64,169,255,.10),
    0 0 34px rgba(64,169,255,.18),
    0 22px 46px rgba(0,0,0,.28);
}

#partners .partner-card.is-main-partner::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(64,169,255,.38), transparent 38%, rgba(183,255,42,.16));
  opacity: .38;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  padding: 1px;
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

#partners .partner-card.is-main-partner:hover {
  border-color: rgba(64, 169, 255, .82);
  box-shadow:
    0 0 42px rgba(64,169,255,.28),
    0 24px 52px rgba(0,0,0,.34);
}

/* Kion v3.12.44 - Shop page product cards */
.kion-shop-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}
.kion-shop-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  border-color: rgba(64,169,255,.22);
  background:
    radial-gradient(circle at 50% 0%, rgba(64,169,255,.10), transparent 42%),
    linear-gradient(145deg, rgba(5,13,24,.94), rgba(6,19,38,.84));
}
.kion-shop-card.is-featured-product {
  border-color: rgba(64,169,255,.62);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 0 0 1px rgba(64,169,255,.10),
    0 0 34px rgba(64,169,255,.20),
    0 22px 46px rgba(0,0,0,.30);
}
.kion-shop-card.is-featured-product::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(64,169,255,.42), transparent 42%, rgba(183,255,42,.16));
  opacity: .42;
  padding: 1px;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.kion-shop-image-wrap {
  position: relative;
  min-height: 210px;
  display: grid;
  place-items: center;
  padding: 18px;
  background:
    radial-gradient(circle at 50% 50%, rgba(183,255,42,.08), transparent 42%),
    rgba(1,7,16,.52);
  border-bottom: 1px solid rgba(64,169,255,.14);
}
.kion-shop-product-image {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: contain;
  filter: drop-shadow(0 18px 28px rgba(0,0,0,.35));
}
.kion-shop-image-placeholder {
  width: 100%;
  min-height: 180px;
  display: grid;
  place-items: center;
  border: 1px dashed rgba(64,169,255,.30);
  border-radius: 18px;
  color: rgba(234,243,255,.54);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-weight: 800;
}
.kion-shop-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(183,255,42,.44);
  color: var(--kion-lime, #b7ff2a);
  background: rgba(4,12,24,.78);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
  box-shadow: 0 0 18px rgba(183,255,42,.10);
}
.kion-shop-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 20px;
  gap: 12px;
}
.kion-shop-category {
  margin-bottom: -2px;
  color: rgba(64,169,255,.88);
}
.kion-shop-card h3 {
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.2;
}
.kion-shop-card p {
  margin: 0;
  color: rgba(214,224,239,.74);
  line-height: 1.62;
}
.kion-shop-card-footer {
  margin-top: auto;
  padding-top: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.kion-shop-price {
  color: var(--kion-lime, #b7ff2a);
  font-size: .96rem;
  white-space: nowrap;
}
.kion-shop-button {
  white-space: nowrap;
  padding: 10px 14px;
  font-size: .78rem;
}
.kion-shop-unavailable {
  color: rgba(214,224,239,.52);
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.kion-shop-empty-card {
  max-width: 760px;
  margin: 0 auto;
}
@media (max-width: 1050px) {
  .kion-shop-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 680px) {
  .kion-shop-grid {
    grid-template-columns: 1fr;
  }
  .kion-shop-image-wrap {
    min-height: 180px;
  }
  .kion-shop-product-image {
    height: 160px;
  }
  .kion-shop-card-footer {
    align-items: stretch;
    flex-direction: column;
  }
  .kion-shop-button {
    text-align: center;
  }
}

/* v3.12.151 — Scheduled Step 2 Kion driver cards */
.kion-scheduled-preview-drivers {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}
.kion-scheduled-driver-card {
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px 14px 14px 12px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 18px;
  background:
    radial-gradient(circle at 12% 0%, rgba(0,132,255,.18), transparent 42%),
    linear-gradient(135deg, rgba(6,14,32,.94), rgba(3,8,20,.88));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 28px rgba(0,0,0,.24);
  cursor: pointer;
  min-width: 0;
  transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.kion-scheduled-driver-card:hover {
  transform: translateY(-1px);
  border-color: rgba(186,255,0,.38);
  box-shadow: 0 0 0 1px rgba(186,255,0,.10), 0 16px 36px rgba(0,0,0,.32);
}
.kion-scheduled-driver-card.is-selected {
  border-color: rgba(186,255,0,.72);
  background:
    radial-gradient(circle at 15% 0%, rgba(186,255,0,.16), transparent 45%),
    linear-gradient(135deg, rgba(9,24,34,.96), rgba(4,10,22,.92));
  box-shadow: 0 0 0 1px rgba(186,255,0,.16), 0 0 28px rgba(186,255,0,.10), 0 16px 36px rgba(0,0,0,.32);
}
.kion-scheduled-driver-card input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.kion-scheduled-driver-check {
  width: 30px;
  height: 30px;
  border-radius: 10px;
  border: 1px solid rgba(186,255,0,.45);
  background: rgba(255,255,255,.045);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
  position: relative;
}
.kion-scheduled-driver-card.is-selected .kion-scheduled-driver-check {
  background: rgba(186,255,0,.16);
  border-color: rgba(186,255,0,.9);
  box-shadow: 0 0 18px rgba(186,255,0,.22), inset 0 0 0 1px rgba(186,255,0,.2);
}
.kion-scheduled-driver-card.is-selected .kion-scheduled-driver-check::after {
  content: '';
  position: absolute;
  left: 9px;
  top: 5px;
  width: 8px;
  height: 15px;
  border: solid var(--kion-lime, #baff00);
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}
.kion-scheduled-driver-main {
  display: grid;
  gap: 7px;
  min-width: 0;
}
.kion-scheduled-driver-main strong {
  color: #fff;
  font-size: 15px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}
.kion-scheduled-driver-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.kion-scheduled-driver-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid rgba(0,132,255,.35);
  background: rgba(0,132,255,.10);
  color: #d9ecff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .02em;
}
.kion-scheduled-driver-main small {
  font-size: 12px;
  color: var(--muted, #9da7bd);
}
.kion-scheduled-driver-main small.is-linked { color: var(--kion-lime, #baff00); }
.kion-scheduled-driver-main small.is-unlinked { color: #ffd27a; }
@media (max-width: 640px) {
  .kion-scheduled-preview-drivers { grid-template-columns: 1fr; }
  .kion-scheduled-driver-card { grid-template-columns: 34px minmax(0, 1fr); padding: 12px; }
}


/* Kion v3.12.173 - Public footer Stint Planner CTA */
.site-footer .kion-footer-public-planner-menu {
  margin-top: 12px !important;
}
.site-footer .kion-footer-public-planner-link {
  border-color: rgba(183, 255, 42, .48) !important;
  background:
    radial-gradient(circle at 18% 50%, rgba(183, 255, 42, .16), transparent 15rem),
    linear-gradient(135deg, rgba(10, 28, 50, .96), rgba(3, 12, 24, .9)) !important;
  color: #ffffff !important;
}
.site-footer .kion-footer-public-planner-link::before {
  background: linear-gradient(180deg, rgba(183, 255, 42, 1), rgba(0, 255, 156, .92)) !important;
}

/* Kion v3.12.221 - final responsive cascade lock */
@media (max-width: 1024px) {
  html, body { max-width:100%; overflow-x:clip; -webkit-text-size-adjust:100%; }
  *, *::before, *::after { box-sizing:border-box; }
  .container { width:auto !important; max-width:none !important; margin-inline:max(18px,env(safe-area-inset-left)) max(18px,env(safe-area-inset-right)) !important; padding-inline:0 !important; }
  .site-header { position:sticky !important; top:0 !important; z-index:1000 !important; }
  .site-header .nav-wrap { min-height:82px !important; gap:16px; }
  .brand-logo { width:min(210px,48vw) !important; min-width:0 !important; }
  .brand-logo img, .brand-logo .custom-logo, .kion-header-logo { width:100% !important; height:auto !important; }
  .menu-toggle { display:inline-flex !important; align-items:center; justify-content:center; min-width:72px; min-height:44px; flex:0 0 auto; }
  .primary-nav { display:none !important; position:absolute !important; top:82px !important; inset-inline:0 !important; max-height:calc(100dvh - 82px); padding:14px max(18px,env(safe-area-inset-right)) calc(18px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)) !important; overflow-y:auto; background:rgba(2,6,12,.985) !important; border-bottom:1px solid rgba(183,255,42,.28); box-shadow:0 24px 50px rgba(0,0,0,.5); }
  .primary-nav.is-open { display:block !important; }
  .primary-nav ul, .primary-nav .menu { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:8px !important; }
  .primary-nav li { min-width:0; }
  .primary-nav a { display:flex !important; align-items:center; width:100%; min-height:46px; padding:10px 12px !important; border:1px solid rgba(255,255,255,.08); border-radius:12px; background:rgba(255,255,255,.035); font-size:.76rem !important; white-space:normal !important; }
  .hero-section { padding:68px 0 58px !important; }
  .section, .cta-section { padding:56px 0 !important; }
  .hero-grid, .two-column, .footer-grid { grid-template-columns:1fr !important; gap:26px !important; }
  .card-grid, .drivers-grid, .partners-grid, .race-grid, .calendar-grid, .logo-strip, .integration-list { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .card, .stat-card, .cta-box, .timeline-item, .planner-step-card, .kion-data-panel { min-width:0; }
  .site-footer .footer-grid, .site-footer .footer-grid:has(.footer-member-navigation-column) { grid-template-columns:1fr !important; }
  img, video, canvas, iframe, svg { max-width:100%; height:auto; }
  input:not([type="checkbox"]):not([type="radio"]), select, textarea { width:100%; min-width:0; max-width:100%; font-size:16px !important; }
  button, .button, [role="button"], input[type="submit"] { min-height:44px; touch-action:manipulation; }
  .table-wrap, .kion-table-wrap, .kion-results-table-wrap, .availability-table, .wp-block-table { max-width:100%; overflow-x:auto !important; -webkit-overflow-scrolling:touch; }
  .kion-wizard-progress { position:static !important; display:flex !important; grid-template-columns:none !important; gap:8px !important; padding:10px !important; overflow-x:auto; scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch; }
  .kion-wizard-step { flex:0 0 min(190px,42vw); min-height:48px; scroll-snap-align:start; }
  .planner-field-grid, .strategy-field-grid, .driver-picker-grid, .availability-grid, .coverage-board, .strategy-driver-grid, .kion-strategy-intel-grid, .final-stint-detail-grid, .manual-stint-time-controls { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 680px) {
  .container { margin-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right)) !important; }
  .site-header .nav-wrap { min-height:72px !important; }
  .brand-logo { width:min(170px,52vw) !important; }
  .primary-nav { top:72px !important; max-height:calc(100dvh - 72px); }
  .primary-nav ul, .primary-nav .menu { grid-template-columns:1fr !important; }
  .hero-section { padding:48px 0 42px !important; }
  .section, .cta-section { padding:38px 0 !important; }
  h1, .hero-copy h1 { font-size:clamp(2.15rem,12vw,3.45rem) !important; overflow-wrap:anywhere; }
  h2, .section-heading h2 { font-size:clamp(1.75rem,9vw,2.5rem) !important; }
  .hero-copy p { font-size:1rem !important; }
  .card-grid, .drivers-grid, .partners-grid, .race-grid, .calendar-grid, .logo-strip, .integration-list, .planner-field-grid, .strategy-field-grid, .driver-picker-grid, .availability-grid, .coverage-board, .strategy-driver-grid, .kion-strategy-intel-grid, .final-stint-detail-grid, .manual-stint-time-controls { grid-template-columns:1fr !important; }
  .card, .stat-card, .cta-box, .timeline-item, .planner-step-card, .kion-data-panel { padding:17px !important; border-radius:17px !important; }
  .hero-actions, .calendar-actions, .kion-wizard-actions { display:grid !important; grid-template-columns:1fr !important; width:100%; }
  .hero-actions .button, .calendar-actions .button, .kion-wizard-actions .button { width:100%; }
  .timeline-item { flex-direction:column; align-items:flex-start; }
  .kion-wizard-step { flex-basis:min(168px,72vw); justify-content:flex-start; }
}
/* v3.12.238 - consistent, adjustable driver directory portraits */
body.kion-route-drivers .kion-driver-card-media {
    position:relative;
    min-height:0;
    aspect-ratio:auto;
    padding:0;
    overflow:hidden;
    isolation:isolate;
}
body.kion-route-drivers .kion-driver-card-media::after {
    content:"";position:absolute;inset:auto 0 0;height:34%;pointer-events:none;z-index:2;
    background:linear-gradient(180deg,transparent,rgba(2,8,15,.62));
}
body.kion-route-drivers :is(.kion-driver-card-image,.kion-driver-card-media img,.kion-driver-directory-card img.wp-post-image) {
    width:100% !important;max-width:none !important;height:100% !important;max-height:none !important;
    margin:0 !important;border-radius:0 !important;object-fit:var(--kion-driver-image-fit,contain) !important;
    object-position:var(--kion-driver-focus-x,50%) var(--kion-driver-focus-y,28%) !important;
    transition:transform .35s ease,filter .35s ease;
}
body.kion-route-drivers .kion-driver-directory-card:hover .kion-driver-card-media img { transform:scale(1.025);filter:contrast(1.03) saturate(1.04); }
@media(max-width:760px){body.kion-route-drivers .kion-driver-card-media{aspect-ratio:auto}}

/* v3.12.239 - precise driver image frame alignment */
body.kion-route-drivers .kion-driver-directory-card {
    --kion-driver-frame-radius:18px;
}
body.kion-route-drivers .kion-driver-card-media {
    box-sizing:border-box;
    place-items:stretch;
    border:1px solid rgba(79,216,255,.20);
    border-bottom-color:rgba(183,255,42,.20);
    border-radius:var(--kion-driver-frame-radius) var(--kion-driver-frame-radius) 0 0;
    background:radial-gradient(circle at 50% 28%,rgba(26,167,255,.13),transparent 48%),linear-gradient(145deg,#071827,#020914);
}
body.kion-route-drivers .kion-driver-card-media > :is(img,.driver-avatar-placeholder) {
    position:static;
    display:block;
    width:100% !important;
    height:auto !important;
    box-sizing:border-box;
}
body.kion-route-drivers .kion-driver-card-media > .driver-avatar-placeholder {
    display:grid;
    place-items:center;
    aspect-ratio:4/5;
    padding:clamp(20px,7%,42px);
}
body.kion-route-drivers .kion-driver-card-media > .driver-avatar-placeholder img {
    position:static;
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
}
body.kion-route-drivers .kion-driver-card-media:focus-visible {
    outline:2px solid #b7ff2a;
    outline-offset:3px;
}
/* Public stable release footer v1.1 */
.site-footer .footer-bottom {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}
