/* 01 씽크대막힘 뚫는법 — 좌측 번호 레일 + 세로 스텝 */
:root{
  --deep:#0D1F2D;
  --primary:#2E86AB;
  --bg:#F5F9FB;
  --accent:#E8A33D;
  --panel:#17303F;
  --font-display:"Wanted Sans Variable","Noto Sans KR",system-ui,-apple-system,"Malgun Gothic",sans-serif;
  --font-body:"Noto Sans KR",system-ui,-apple-system,"Malgun Gothic",sans-serif;
}

body{background:var(--bg);color:var(--deep);font-family:var(--font-body);font-size:16px;line-height:1.75}

/* header */
.site-header{background:#fff;border-bottom:1px solid #E1EAEE;position:sticky;top:0;z-index:10}
.site-header .wrap{padding-block:14px}
.logo{font-family:var(--font-display);font-weight:800;font-size:20px;color:var(--deep)}
.site-header nav ul{font-size:14px}
.site-header nav a{color:var(--deep);padding:6px 2px;border-bottom:2px solid transparent}
.site-header nav a:hover,.site-header nav a:focus-visible{border-color:var(--primary)}
.related-nav{display:flex;gap:10px;font-size:13px;color:var(--primary)}

/* hero */
.hero{background:var(--panel);color:#fff;padding-block:56px 48px}
.hero .wrap{max-width:760px}
.hero .eyebrow{display:inline-block;font-size:13px;letter-spacing:.08em;color:var(--accent);font-weight:700;margin-bottom:14px}
.hero h1{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,5vw,40px);color:#fff}
.hero .lead{margin-top:16px;font-size:17px;color:#C9DCE5;max-width:56ch}
.hero .cta-inline{margin-top:26px;display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--deep);font-weight:700;padding:14px 24px;border-radius:2px}
.hero .cta-inline:hover,.hero .cta-inline:focus-visible{background:#f0b158}

/* main step rail */
.steps{padding-block:64px}
.steps .wrap{display:flex;flex-direction:column;gap:56px}
.step{display:grid;grid-template-columns:88px 1fr;gap:28px}
.step-rail{display:flex;flex-direction:column;align-items:center}
.step-num{font-family:var(--font-display);font-weight:800;font-size:34px;color:var(--primary);line-height:1}
.step-line{flex:1;width:2px;background:#D7E4EA;margin-top:10px;min-height:24px}
.step:last-of-type .step-line{display:none}
.step-body h2{font-family:var(--font-display);font-size:22px;font-weight:800;color:var(--deep)}
.step-body p{margin-top:12px;max-width:68ch}
.step-body p + p{margin-top:12px}

@media (max-width:640px){
  .step{grid-template-columns:56px 1fr;gap:16px}
  .step-num{font-size:24px}
}

/* 분기 도식: 막힘 정도 3단계 → 대응 갈림 */
.branch-diagram{margin-top:24px;border:1px solid #D7E4EA;background:#fff;padding:24px;border-radius:2px}
.branch-diagram .branch-start{font-weight:700;text-align:center;padding:10px 16px;border:2px solid var(--primary);color:var(--primary);display:inline-block;border-radius:2px}
.branch-diagram .branch-row{display:flex;justify-content:center}
.branch-arrows{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;position:relative}
.branch-arrows::before{content:"";position:absolute;top:-20px;left:16.6%;right:16.6%;height:2px;background:#D7E4EA}
.branch-arrows li{list-style:none;border:1px solid #D7E4EA;padding:16px;text-align:center;position:relative}
.branch-arrows li::before{content:"";position:absolute;top:-20px;left:50%;width:2px;height:20px;background:#D7E4EA}
.branch-arrows .lv1{border-top:4px solid var(--accent)}
.branch-arrows .lv2{border-top:4px solid var(--primary)}
.branch-arrows .lv3{border-top:4px solid var(--deep)}
.branch-arrows strong{display:block;font-family:var(--font-display);font-size:15px;margin-bottom:6px}
.branch-arrows span{font-size:13px;color:#4A6373}

@media (max-width:640px){
  .branch-arrows{grid-template-columns:1fr}
  .branch-arrows::before{display:none}
  .branch-arrows li::before{display:none}
}

/* 안전 고지 */
.safety-box{margin-top:24px;background:#FBF0DE;border-left:4px solid var(--accent);padding:18px 20px}
.safety-box h3{font-family:var(--font-display);font-size:16px;margin-bottom:8px}
.safety-box ul{margin-top:8px}
.safety-box li{padding-left:14px;position:relative;margin-top:6px}
.safety-box li::before{content:"·";position:absolute;left:0;color:var(--accent);font-weight:800}

/* 이미지 */
figure{margin-top:32px}
figcaption{margin-top:10px;color:#4A6373;text-align:center}

/* 후기 */
.review-section{background:#fff;padding-block:56px;border-top:1px solid #E1EAEE}
.review-section h2{font-family:var(--font-display);font-size:22px;font-weight:800;text-align:center}
.review-list{margin-top:28px;grid-template-columns:repeat(2,1fr)}
@media (max-width:640px){.review-list{grid-template-columns:1fr}}
.review-list blockquote{background:var(--bg);border:1px solid #E1EAEE;padding:18px;font-size:14.5px}
.review-list cite{display:block;margin-top:10px;font-style:normal;font-size:13px;color:var(--primary);font-weight:700}

/* 관련 페이지 */
.related-links{padding-block:40px}
.related-links p{font-weight:700;font-size:14px;color:var(--primary);margin-bottom:12px}
.related-links a{border:1px solid #D7E4EA;padding:8px 14px;font-size:14px;border-radius:2px}
.related-links a:hover,.related-links a:focus-visible{border-color:var(--primary);color:var(--primary)}

/* cta */
.cta-block{background:var(--deep);color:#fff;padding-block:48px}
.cta-block .cta-heading{font-family:var(--font-display);font-size:24px;font-weight:800}
.cta-block a[href^="tel:"]{margin-top:18px;background:var(--primary);color:#fff;font-weight:700;padding:16px 32px;border-radius:2px}
.cta-block a[href^="tel:"]:hover,.cta-block a[href^="tel:"]:focus-visible{background:#26738f}

/* footer */
.site-footer{background:#0A161F;color:#B7C6CE;padding-block:14px;font-size:13.5px}

.photo-row-section h2{font-family:var(--font-display);font-size:22px;font-weight:800;text-align:center;margin-bottom:24px}
.photo-row{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;max-width:1000px;margin-inline:auto}
.photo-row figure{flex:1 1 200px;max-width:260px;margin:0}
.photo-row img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:8px}
@media (max-width:640px){.photo-row{flex-direction:column;align-items:center}.photo-row figure{max-width:400px;width:100%}}
