/* p69 — 믿을 수 있는 카마스터 고르는 법 : 체크리스트형 / F9 DM Sans+Pretendard / HD1 / HR(텍스트좌·프로필우 소형) / CT2 / FT1 */
:root {
  --accent: #142F54;
  --accent-text: #17273D;
  --bg: #F3F6FA;
  --ink: #141D2A;
  --font-display: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: "Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;
  --footer-bg: #0F1A29;
  --footer-text: #BFCDE0;
}

/* HD1 : 좌 로고타입 + 우 가로 메뉴 */
.site-header { border-bottom: 1px solid #D9E0EB; background: #fff; }
.hd1-inner { display: flex; align-items: center; justify-content: space-between; height: 74px; }
.logotype { font-family: var(--font-display); font-weight: 700; font-size: 17px; text-decoration: none; color: var(--accent-text); }
.site-header nav ul { display: flex; gap: 20px; list-style: none; margin: 0; padding: 0; }
.site-header nav a { text-decoration: none; font-size: 14px; font-weight: 700; }
.site-header nav a:hover { color: var(--accent-text); }
@media (max-width: 640px) { .site-header nav ul { gap: 10px; flex-wrap: wrap; } }

/* 히어로 : 슬라이드쇼 배경(장식) + 좌 텍스트/우 소형 프로필 */
.hero { position: relative; overflow: hidden; padding-block: clamp(44px, 8vw, 84px); background: var(--ink); }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(20,47,84,.88), rgba(10,14,20,.72)); z-index: 0; }
.hero-inner { display: grid; gap: 28px; }
.hero-copy h1 { font-size: clamp(26px, 4vw, 40px); color: #fff; }
.hero-lede { font-size: 16.5px; color: #DFE7F3; max-width: 60ch; }
.hero-visual { justify-self: start; }
.hero-visual img { width: 140px; height: 140px; border-radius: 50%; object-fit: cover; border: 3px solid #fff; }
@media (min-width: 760px) {
  .hero-inner { grid-template-columns: 1.3fr 0.7fr; align-items: center; }
  .hero-visual { justify-self: end; }
  .hero-visual img { width: 176px; height: 176px; }
}

/* 체크리스트 표 강조 */
.body-table-wrap { overflow-x: auto; margin: 22px 0; }

/* 기준 목록 */
.criteria-list { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 14px; }
.criteria-list li { border: 1px solid #D9E0EB; background: #fff; border-radius: 10px; padding: 16px 18px; }
.criteria-list h3 { font-size: 16px; margin: 0 0 4px; color: var(--accent-text); }
.criteria-list p { margin: 0; font-size: 14.5px; color: #2C3644; }

/* FAQ 아코디언 */
.faq-item { border: 1px solid #D9E0EB; border-radius: 10px; background: #fff; margin-bottom: 12px; }
.faq-item summary { list-style: none; cursor: pointer; padding: 16px 20px; font-weight: 700; font-size: 15.5px; color: var(--ink); }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; float: right; color: var(--accent-text); font-weight: 700; }
.faq-item[open] summary::after { content: "−"; }
.faq-item p { padding: 0 20px 18px; margin: 0; font-size: 14.5px; color: #2C3644; }

/* CT2 : 카드형 박스 중앙 + 버튼 3개 가로 */
.cta.ct2 { padding-block: clamp(40px, 6vw, 64px); }
.ct2-card { max-width: 640px; margin: 0 auto; background: #fff; border: 1px solid #D9E0EB; border-radius: 18px; padding: clamp(28px, 5vw, 44px); text-align: center; box-shadow: 0 18px 40px -24px rgba(20,47,84,.35); }
.ct2-card h2 { font-size: clamp(20px, 2.6vw, 26px); color: var(--accent-text); }
.cta-buttons--center { justify-content: center; }

.sticky-call { display: none; }
@media (max-width: 640px) {
  .sticky-call { display: flex; align-items: center; justify-content: center; position: fixed; left: 0; right: 0; bottom: 0; z-index: 50; background: var(--accent); color: #fff; font-weight: 700; font-size: 15px; padding: 14px; text-decoration: none; }
  main { padding-bottom: 56px; }
}

/* FT1 : 3단 그리드 */
.footer-grid { display: grid; gap: 22px; grid-template-columns: 1fr; }
@media (min-width: 800px) { .footer-grid { grid-template-columns: 1.3fr 1fr 1.2fr; } }
.footer-links p { margin: 0 0 8px; }
