/* 2026-10-03 회사소개 v2 — 매쓰플랫(mathflat.com) 메인 실측값을 칸 폭(1280)에 맞춰 축소
   매쓰플랫: 컨테이너 1323 · H1 58/73 700 자간 -1.17 · H2 52/68 700 자간 -1.05 · 섹션 상단 여백 156 · 카드 radius 15.6 회색 면
   버튼 54px·radius 7.8·padding 14/39 · 숫자 띠 검정 배경에 흰 숫자 58px 400 · 마무리는 사진 위 흰 제목 52px
   칸: H1 52/1.25 · H2 44/1.3 · 섹션 상단 120 · 포인트색은 브랜드 보라. 서체는 Pretendard 하나. */
.ka{color:var(--body,#374151);font-family:var(--font-sans)}
.ka-h2{margin:0;font-size:44px;line-height:1.3;font-weight:700;letter-spacing:-.02em;color:#111;text-align:center;word-break:keep-all}
.ka-h2--white{color:#fff}
.ka-sub{margin:20px auto 0;max-width:720px;font-size:19px;line-height:1.6;font-weight:500;letter-spacing:-.01em;color:#333;text-align:center;word-break:keep-all}
.ka-sec{padding:120px 0 0}
.ka-sec--last{padding-bottom:120px}


.ka a:focus-visible{outline:2px solid var(--brand,#693BF2);outline-offset:3px}

/* 1. 히어로: 왼쪽 큰 제목 / 오른쪽 설명 + 버튼, 아래 와이드 사진 */
.ka-hero{padding:56px 0 0}
.ka-hero__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:end}
.ka-hero__title{margin:0;font-size:52px;line-height:1.25;font-weight:700;letter-spacing:-.025em;color:#111;word-break:keep-all}
.ka-hero__sub{margin:0 0 6px;font-size:18px;line-height:1.65;font-weight:500;letter-spacing:-.01em;color:#333;word-break:keep-all}
.ka-hero__photo{margin:56px 0 0;border-radius:16px;overflow:hidden;background:#eef0f4}
.ka-hero__photo img{display:block;width:100%;height:440px;object-fit:cover}

/* 2. 카드 3개: 회색 면, radius 16, 첫 카드는 검정 + 큰 보라 숫자 */
.ka-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:56px 0 0;padding:0;list-style:none}
.ka-card{position:relative;display:flex;flex-direction:column;min-height:460px;padding:36px 32px 0;border-radius:16px;background:#f5f6f8;overflow:hidden}
.ka-card__body{position:relative;z-index:1}
.ka-card__eyebrow{margin:0 0 10px;font-size:15px;line-height:22px;font-weight:500;color:#555}
.ka-card__title{margin:0;font-size:24px;line-height:1.4;font-weight:700;letter-spacing:-.02em;color:#111;word-break:keep-all}
.ka-card__desc{margin:12px 0 0;font-size:15px;line-height:1.65;color:#444;word-break:keep-all}
.ka-card__link{display:inline-flex;align-items:center;gap:2px;margin-top:16px;font-size:15px;font-weight:700;color:var(--brand,#693BF2);text-decoration:none}
.ka-card__link svg{width:16px;height:16px}
.ka-card__link:hover{text-decoration:underline;text-underline-offset:3px}
.ka-card__art{display:block;width:220px;height:220px;margin:auto auto 0;object-fit:contain;transform:translateY(12px)}
/* 검정 카드: .is-dark 가 3초마다 다음 카드로 넘어간다(khan-about.js). 색은 .6s 로 부드럽게 */
.ka-card{transition:background-color .6s ease,color .6s ease}
.ka-card__eyebrow,.ka-card__title,.ka-card__desc,.ka-card__link,.ka-card__big,.ka-card__big strong,.ka-card__big span,.ka-card__big small{transition:color .6s ease}
.ka-card__art{transition:filter .6s ease,transform .6s ease}
.ka-card.is-dark{background:#111;color:#fff}
.ka-card.is-dark .ka-card__eyebrow{color:#b9bcc6}
.ka-card.is-dark .ka-card__title{color:#fff}
.ka-card.is-dark .ka-card__desc{color:#c9ccd4}
.ka-card.is-dark .ka-card__link{color:#C4B0FF}
.ka-card.is-dark .ka-card__art{filter:drop-shadow(0 18px 30px rgba(105,59,242,.45));transform:translateY(8px)}
.ka-card__big{margin:auto 0 0;padding:28px 0 36px}
.ka-card__big strong{display:inline-block;font-size:64px;line-height:1;font-weight:700;letter-spacing:-.03em;color:var(--brand,#693BF2);font-variant-numeric:tabular-nums}
.ka-card__big span{margin-left:4px;font-size:22px;font-weight:600;color:var(--brand,#693BF2)}
.ka-card__big small{display:block;margin-top:8px;font-size:13.5px;color:#6b7280}
.ka-card.is-dark .ka-card__big strong,.ka-card.is-dark .ka-card__big span{color:#A98BFF}
.ka-card.is-dark .ka-card__big small{color:#9a9ea9}

/* 3. 검은 숫자 띠 */
.ka-data{margin-top:120px;padding:100px 0;background:#000 radial-gradient(60% 80% at 35% 50%,rgba(30,80,120,.55),transparent 70%)}
.ka-data__nums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:56px 0 0;text-align:center}
.ka-data__nums dd{margin:0;font-size:22px;line-height:1.2;color:#fff;font-variant-numeric:tabular-nums}
.ka-data__nums dd strong{font-size:56px;line-height:1.1;font-weight:400;letter-spacing:-.01em;color:#fff}
.ka-data__nums dt{margin:16px 0 0;font-size:16px;font-weight:500;color:#dfe2e8}
.ka-data__asof{margin:40px 0 0;font-size:12.5px;text-align:center;color:#7d8290}

/* 4. 일하는 원칙: 3열, 번호 + 제목 + 설명 */
.ka-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:48px 0 0;padding:0;list-style:none}
.ka-principles>li{padding:32px 28px;border-radius:16px;background:#f5f6f8}
.ka-principles__no{display:block;margin-bottom:18px;font-size:15px;font-weight:700;color:var(--brand,#693BF2);font-variant-numeric:tabular-nums}
.ka-principles h3{margin:0;font-size:21px;line-height:1.4;font-weight:700;letter-spacing:-.02em;color:#111;word-break:keep-all}
.ka-principles p{margin:10px 0 0;font-size:15px;line-height:1.65;color:#444;word-break:keep-all}

@media(max-width:1023px){
  .ka-h2{font-size:34px}
  .ka-sec{padding-top:88px}
  .ka-hero{padding-top:36px}
  .ka-hero__grid{grid-template-columns:minmax(0,1fr);gap:20px}
  .ka-hero__title{font-size:40px}
  .ka-hero__photo{margin-top:36px}
  .ka-data__nums{gap:32px 16px;margin-top:40px}
  .ka-sec--last{padding-bottom:88px}
  .ka-hero__photo img{height:340px}
  .ka-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:40px}
  .ka-card:first-child{grid-column:1/-1;min-height:0}
  .ka-card:first-child .ka-card__big{padding-bottom:32px}
  .ka-card{min-height:420px}
  .ka-data{margin-top:88px;padding:80px 0}
  .ka-data__nums dd strong{font-size:46px}
  .ka-principles{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:36px}
}
@media(max-width:639px){
  .ka-h2{font-size:28px}
  .ka-sub{font-size:16px}
  .ka-sec{padding-top:64px}
  .ka-hero{padding-top:24px}
  .ka-hero__title{font-size:32px}
  .ka-hero__sub{font-size:15.5px}
  .ka-sec--last{padding-bottom:64px}
  .ka-data__nums{grid-template-columns:minmax(0,1fr);gap:28px}
  .ka-hero__photo{margin-top:28px;border-radius:12px}
  .ka-hero__photo img{height:220px}
  .ka-cards{grid-template-columns:minmax(0,1fr);margin-top:32px}
  .ka-card{min-height:0;padding:28px 24px 0}
  .ka-card__title{font-size:21px}
  .ka-card__art{width:170px;height:170px}
  .ka-card__big strong{font-size:48px}
  .ka-data{margin-top:64px;padding:64px 0}
  .ka-data__nums dd strong{font-size:40px}
  .ka-data__nums dt{font-size:14px}
}
/* 움직임: 스크롤 등장(아래 18px → 제자리, 0.7s), 사진은 살짝 확대돼 있다가 제자리. 카드 hover 살짝 들림 */
.ka-rv{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .7s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.ka-rv.is-in{opacity:1;transform:none}
.ka-rv--photo{transform:translateY(18px) scale(1.02);transition-duration:.9s}
.ka-rv--photo.is-in{transform:none}
.ka-card.is-in{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,background-color .6s ease,color .6s ease}
@media(hover:hover){.ka-card.is-in:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(17,17,17,.10)}.ka-card.is-dark.is-in:hover{box-shadow:0 18px 40px rgba(105,59,242,.25)}}
.ka-data__nums strong{display:inline-block;min-width:3ch}
@media(prefers-reduced-motion:reduce){.ka-rv,.ka-rv--photo{opacity:1;transform:none;transition:none}.ka-card.is-in:hover{transform:none}}
@media print{.ka-hero__photo{display:none}.ka-rv{opacity:1;transform:none}}

/* 2026-10-03 검색 질문(FAQ) + 업종별 바로가기 */
.ka-faqwrap{max-width:860px;margin:40px auto 0}
.ka-faq{border-top:1px solid #111}
.ka-faq summary{padding:18px 4px;font-size:17px;font-weight:600;color:#111}
.ka-faq .a{padding:0 4px 20px;font-size:15px;line-height:1.75;color:#444;word-break:keep-all}
@media(max-width:639px){.ka-faq summary{font-size:15.5px;padding:15px 2px}.ka-faq .a{font-size:14px}}
