/* KSC HOME 8BOX WIDTH SPACING FIX V1 */
/* Wider first column + equal section gaps + unified yellow */

html body.ksc-home-8box-width-spacing-fix-v1 {
  --ksc-yellow: #FFD300 !important;
  --ksc-gold: #FFD300 !important;
  --ksc-accent: #FFD300 !important;
}

/* equal hero/section vertical rhythm */
html body.ksc-home-8box-width-spacing-fix-v1 main > section {
  margin-bottom: 0 !important;
}

html body.ksc-home-8box-width-spacing-fix-v1 main > section + section {
  margin-top: 26px !important;
}

/* compact top hero */
html body.ksc-home-8box-width-spacing-fix-v1 main > section:first-child {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

html body.ksc-home-8box-width-spacing-fix-v1 main > section:first-child h1,
html body.ksc-home-8box-width-spacing-fix-v1 main > section:first-child h1 *,
html body.ksc-home-8box-width-spacing-fix-v1 main > section:first-child [class*="headline"],
html body.ksc-home-8box-width-spacing-fix-v1 main > section:first-child [class*="headline"] * {
  font-size: clamp(24px, 2.35vw, 32px) !important;
  line-height: 1.10 !important;
}

/* unified yellow */
html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-kicker,
html body.ksc-home-8box-width-spacing-fix-v1 .ksc-meaning-line-kicker {
  color: #FFD300 !important;
  border-color: rgba(255, 211, 0, .48) !important;
}

html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-no {
  background: #FFD300 !important;
  color: #050505 !important;
}

html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-section,
html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card,
html body.ksc-home-8box-width-spacing-fix-v1 .ksc-meaning-line-section {
  border-color: rgba(255, 211, 0, .28) !important;
}

html body.ksc-home-8box-width-spacing-fix-v1 .ksc-meaning-line-section::after {
  background: #FFD300 !important;
}

/* 8 box layout: first column a little wider, so top+bottom two boxes breathe */
@media (min-width: 1100px) {
  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-section,
  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-meaning-line-section {
    max-width: 1180px !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-grid {
    grid-template-columns: minmax(285px, 1.42fr) repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card {
    min-height: 150px !important;
    padding: 16px !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card.is-main h3 {
    font-size: 17px !important;
    line-height: 1.08 !important;
    white-space: nowrap !important;
    letter-spacing: -0.02em !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card h3 {
    font-size: 20px !important;
    line-height: 1.10 !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card p {
    font-size: 13.2px !important;
    line-height: 1.50 !important;
  }
}

@media (min-width: 1280px) {
  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-grid {
    grid-template-columns: minmax(305px, 1.48fr) repeat(3, minmax(0, 1fr)) !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card.is-main h3 {
    font-size: 18px !important;
  }
}

@media (max-width: 1099px) {
  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-card.is-main h3 {
    white-space: normal !important;
  }
}

@media (max-width: 640px) {
  html body.ksc-home-8box-width-spacing-fix-v1 main > section + section {
    margin-top: 20px !important;
  }

  html body.ksc-home-8box-width-spacing-fix-v1 .ksc-system-8box-grid {
    grid-template-columns: 1fr !important;
  }
}