/* /KOREA-CHINALINK - page specific (base components in pages/67-management.css) */
.kcl-hero { min-height: 457px; }
.kcl-headline { font-weight: 400; color: #212121; }

/* service overview cards */
.kcl-overview { margin-top: 30px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; align-items: start; }
.kcl-ov { display: flex; flex-direction: column; align-items: center; min-height: 271px; padding: 27px 16px 24px; border: 2px solid #111; border-radius: 18px; background: #fff; text-align: center; color: #212121; }
.kcl-ov img { width: 100px; height: 100px; object-fit: contain; }
.kcl-ov h3 { margin-top: 10px; font-size: 30px; line-height: 1.4; font-weight: 700; }
.kcl-ov p { margin-top: 12px; font-size: 18px; line-height: 1.22; letter-spacing: -.02em; }

/* service detail blocks: text left (503) + stacked color cards right (717) */
.kcl-svc { display: grid; grid-template-columns: minmax(0, 503fr) minmax(0, 717fr); column-gap: 30px; align-items: start; }
.kcl-svc__title { font-family: var(--font-en); font-size: 48px; line-height: 1.35; font-weight: 700; letter-spacing: -.01em; }
.kcl-svc__sub { margin-top: 30px; font-size: 26px; line-height: 1.33; font-weight: 700; }
.kcl-svc__text { margin-top: 30px; font-size: 22px; line-height: 1.45; }
.kcl-svc__text--20 { font-size: 20px; line-height: 1.6; }
.kcl-svc__cards { display: grid; gap: 30px; padding-top: 85px; }
.kcl-card { padding: 22px 20px 26px; border-radius: 20px; background: var(--card, #233056); color: #fff; }
.kcl-card h3 { font-size: 26px; line-height: 1.35; font-weight: 700; }
.kcl-card p { margin-top: 14px; font-size: 24px; line-height: 1.35; }
.kcl-card ul { margin-top: 8px; font-size: 22px; line-height: 1.45; }
.kcl-card ul b { font-weight: 700; }

/* value cards (navy) */
.kcl-value__title { color: #ffb5cb; }
.kcl-value__sub { margin-top: 30px; font-size: 36px; line-height: 1.6; font-weight: 700; }
.kcl-values { margin-top: 30px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
.kcl-value { position: relative; display: flex; flex-direction: column; justify-content: space-between; min-height: 256px; padding: 20px 20px 27px; border: 2px solid #ffb5cb; border-radius: 18px; background: #233056; color: #fff; font-size: 24px; line-height: 1.22; font-weight: 700; }
.kcl-value img { align-self: flex-end; width: auto; height: 120px; max-width: 200px; object-fit: contain; }

/* closing CTA on pink */
.kcl-cta { background: #f2dbe1; color: #212121; }
.kcl-cta .svc-eyebrow { color: #fff; }
.kcl-cta .svc-checks { border-color: #fff; }

@media (max-width: 1200px) {
  .kcl-ov h3 { font-size: 24px; }
  .kcl-ov p { font-size: 16px; }
  .kcl-ov p br { content: ""; } .kcl-ov p br::after { content: " "; }
}
@media (max-width: 960px) {
  .kcl-overview, .kcl-values { grid-template-columns: 1fr 1fr; gap: 16px; }
  .kcl-svc { grid-template-columns: 1fr; }
  .kcl-svc__cards { padding-top: 40px; gap: 16px; }
  .kcl-svc__title { font-size: 36px; }
  .kcl-value__sub { font-size: 26px; }
  .kcl-value { font-size: 20px; }
}
@media (max-width: 640px) {
  .kcl-hero { min-height: 280px; }
  .kcl-ov { min-height: 0; padding: 20px 12px; }
  .kcl-ov img { width: 64px; height: 64px; }
  .kcl-ov h3 { font-size: 19px; }
  .kcl-ov p { font-size: 14px; }
  .kcl-svc__title { font-size: 28px; }
  .kcl-svc__title br { content: ""; } .kcl-svc__title br::after { content: " "; }
  .kcl-svc__sub { font-size: 19px; }
  .kcl-svc__text, .kcl-svc__text--20 { font-size: 16px; }
  .kcl-svc__text br, .kcl-svc__sub br { content: ""; } .kcl-svc__text br::after, .kcl-svc__sub br::after { content: " "; }
  .kcl-card { padding: 18px 16px 20px; border-radius: 16px; }
  .kcl-card h3 { font-size: 19px; }
  .kcl-card p { font-size: 16px; }
  .kcl-card p br { content: ""; } .kcl-card p br::after { content: " "; }
  .kcl-card ul { font-size: 15px; }
  .kcl-value__sub { font-size: 20px; }
  .kcl-value { min-height: 190px; font-size: 16px; padding: 16px 14px 18px; }
  .kcl-value br { content: ""; } .kcl-value br::after { content: " "; }
  .kcl-value img { height: 72px; max-width: 120px; }
}

/* audit fix: match original section heights (capabilities 1382px, CTA 981px) */
@media (min-width: 961px) {
  .kcl-head .svc-title, .kcl-head h2 { line-height: 1.7; }
  .kcl-rows { padding-bottom: 150px; }
  .kcl-cta { padding-top: 230px; }
}

