/* 회사 홈 — DS 공개 소개 틀(design/tactile/layout.css · body[data-frame="intro"]) 위의 배치만 둔다.
   부품 모양은 DS(.btn · .panel · .panel.metric · .frame-*) 그대로이고, 값은 DS 토큰만 쓴다.
   글자 단계: 슬로건 디스플레이 · 섹션 제목과 가치 문장 같은 크기 · 본문 15~17(부제 20). */
.home-nowrap { white-space: nowrap; }

/* 섹션 사이: 틀의 큰 간격 */
.home-landing > section { padding-block: var(--space-7); }

/* 히어로: 화면 폭 전체 유리 사진 위 슬로건 · 정체성 · 버튼 */
.home-landing > .home-hero { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: center; min-height: min(640px, 76vh); padding-block: var(--space-10) var(--space-9); }
.home-hero .home-hero-inner { position: relative; z-index: 1; width: 100%; gap: var(--space-5); }
.home-landing .home-title { max-width: none; margin: 0; font-size: var(--fs-num-xl); font-weight: var(--fw-regular); letter-spacing: var(--ls-display); line-height: var(--lh-tight); color: var(--ink); }
.home-landing .home-identity { max-width: none; margin: 0; font-size: var(--fs-h3); line-height: var(--lh-body); color: var(--ink); word-break: keep-all; }

/* 섹션 제목 */
.home-landing .home-section-title { margin: 0 0 var(--gap-section); font-size: var(--fs-h1); font-weight:var(--fw-medium); letter-spacing: var(--ls-heading); line-height: var(--lh-heading); }

/* 주는 가치 두 가지: 섹션 제목 크기의 문장 + 본문 크기 설명 */
.home-pillars { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-7); }
.home-pillar { display: flex; flex-direction: column; gap: var(--space-4); padding-block-start: var(--space-5); border-top: 1px solid var(--line); }
.home-pillar .home-pillar-title { margin: 0; font-size: var(--fs-h1); font-weight:var(--fw-medium); letter-spacing: var(--ls-heading); line-height: var(--lh-heading); word-break: keep-all; text-wrap: balance; }
.home-pillar p { margin: 0; font-size: var(--fs-lead); line-height: var(--lh-body); color: var(--muted); word-break: keep-all; }

/* AI 네이티브: 큰 정의 문장 + 본문 크기 네 조건 */
.home-landing .home-definition { margin: 0 0 var(--gap-section); max-width: 22em; font-size: var(--fs-h2); font-weight: var(--fw-light); letter-spacing: var(--ls-heading); line-height: var(--lh-heading); color: var(--ink); word-break: keep-all; }
.home-landing .home-subtitle { margin: 0 0 var(--gap-group); font-size: var(--fs-h3); font-weight: var(--fw-regular); color: var(--muted); }
.home-principles { margin: 0; padding: 0; list-style: none; }
.home-principles p { margin: 0; color: var(--ink); font-size: var(--fs-lead); line-height: var(--lh-body); word-break: keep-all; }

/* 하는 일: 제품 · AX 컨설팅·교육 · AX 프로젝트 */
.home-work { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--gap-item) var(--gap-group); }
.home-work-group, .home-cards { display:contents; }
.home-work .home-subtitle { margin:0; grid-row:1; }
.home-work-group[data-col="1"] .home-subtitle { grid-column:1; }
.home-work-group[data-col="2"] .home-subtitle { grid-column:2 / span 2; }
.home-work-group[data-col="4"] .home-subtitle { grid-column:4; }
.home-card { display:flex; flex-direction:column; grid-row:2; gap:var(--space-3); padding:var(--space-5); color:var(--ink); text-decoration:none; transition:box-shadow var(--t-2); }
.home-card:hover { background:var(--glass-light),var(--panel-fill); box-shadow:var(--depth-2); }
.home-card .home-card-title { margin: 0; font-size: var(--fs-h3); font-weight: var(--fw-medium); letter-spacing: var(--ls-heading); }
.home-card p { margin: 0; font-size: var(--fs-body); line-height: var(--lh-body); color: var(--muted); word-break: keep-all; }

/* 수행 규모 */
.home-proof { margin: 0; }
.home-proof dd { margin: 0; }
.home-proof .home-proof-num { font-size: var(--fs-num-lg); }
.home-proof-links { margin-top: var(--gap-group); justify-content: flex-start; align-items: flex-start; }

/* 문의 띠: 좁은 폭에서는 버튼을 문장 아래로(아래 1024 미만 규칙). 바깥 경계는 DS 카드 경계(바탕 대비 3:1 이상). */
.home-band { box-shadow:var(--panel-shadow); }
.company-site .home-band h2 { font-size:var(--fs-h2); }

@media (width < 1024px) {
  .home-landing > section { padding-block: var(--space-7); }
  .home-landing > .home-hero { padding-block: var(--space-9) var(--space-8); }
  .home-landing .home-title { font-size: var(--fs-display); }
  .home-work { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-work .home-work-group .home-subtitle { grid-column:1 / -1; grid-row:auto; }
  .home-card { grid-row:auto; }
  .home-pillars { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-band { flex-direction: column; align-items: flex-start; }
}
@media (width < 768px) {
  .home-landing > .home-hero { min-height: 0; padding-block: var(--space-8) var(--space-7); }
  /* Narrow screens show only part of the photo; this keeps the leaf shadows top right, beside the first title line. */
  .home-landing .home-title { font-size: var(--fs-h1); }
  .home-landing .home-identity { font-size: var(--fs-lead); }
  .home-landing .home-section-title,
  .home-pillar .home-pillar-title { font-size: var(--fs-h2); }
  .home-landing .home-definition { font-size: var(--fs-h3); }
  .home-pillars { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .home-work { grid-template-columns:minmax(0,1fr); }
  .home-work .home-work-group .home-subtitle { grid-column:1; grid-row:auto; }
}
