/* 03 씽크대막힘 셀프 — 좌측 도구 인덱스 + 단계별 본문 */
:root{
  --bg:#FDFBF6;
  --ink:#47403A;
  --rust:#C07A3E;
  --olive:#8A9C64;
  --panel:#E6DFD4;
  --font-display:"Song Myung","Noto Sans KR",system-ui,-apple-system,"Malgun Gothic",serif;
  --font-body:"Noto Sans KR",system-ui,-apple-system,"Malgun Gothic",sans-serif;
}

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

.site-header{background:#fff;border-bottom:1px solid var(--panel)}
.site-header .wrap{padding-block:16px}
.logo{font-family:var(--font-display);font-weight:400;font-size:21px;color:var(--ink)}
.site-header nav ul{font-size:13.5px}
.site-header nav a{color:var(--ink)}
.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--rust)}
.related-nav{font-size:12.5px;color:var(--rust)}

.hero{background:var(--panel);padding-block:52px}
.hero .wrap{max-width:680px}
.hero .eyebrow{font-size:13px;letter-spacing:.08em;color:var(--rust);font-weight:700}
.hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(30px,5vw,40px);margin-top:14px;color:var(--ink)}
.hero .lead{margin-top:16px;font-size:16.5px;max-width:56ch}
.hero .cta-inline{margin-top:24px;display:inline-block;background:var(--rust);color:#fff;font-weight:700;padding:12px 26px}

/* 좌측 도구 인덱스 레이아웃 */
.tool-layout{padding-block:56px}
.tool-layout .wrap{display:grid;grid-template-columns:200px 1fr;gap:40px;align-items:start}
.tool-index{position:sticky;top:20px}
.tool-index p{font-weight:700;font-size:13px;color:var(--rust);margin-bottom:10px}
.tool-index ul{display:flex;flex-direction:column;gap:8px}
.tool-index a{font-size:14px;padding:6px 0;display:block;border-left:2px solid var(--panel);padding-left:12px}
.tool-index a:hover,.tool-index a:focus-visible{border-color:var(--rust);color:var(--rust)}

@media (max-width:800px){
  .tool-layout .wrap{grid-template-columns:1fr}
  .tool-index{position:static}
  .tool-index ul{flex-direction:row;flex-wrap:wrap}
}

.tool-step{margin-top:48px;scroll-margin-top:20px}
.tool-step:first-child{margin-top:0}
.tool-step h2{font-family:var(--font-display);font-weight:400;font-size:24px;color:var(--ink)}
.tool-step p{margin-top:14px;max-width:64ch}
.tool-step p + p{margin-top:12px}

/* 2열 대조표 */
.compare-table{margin-top:24px}
.compare-table table{font-size:14.5px}
.compare-table th,.compare-table td{padding:12px;border:1px solid var(--panel);vertical-align:top}
.compare-table th{background:var(--panel);font-family:var(--font-display);font-weight:400}
.compare-table .col-ok{border-top:3px solid var(--olive)}
.compare-table .col-stop{border-top:3px solid var(--rust)}

.safety-box{margin-top:24px;background:#F5EEE0;border-left:4px solid var(--rust);padding:18px 20px}
.safety-box h3{font-family:var(--font-display);font-weight:400;font-size:16px;margin-bottom:8px}
.safety-box li{margin-top:6px;padding-left:14px;position:relative;font-size:14.5px}
.safety-box li::before{content:"·";position:absolute;left:0;color:var(--rust);font-weight:800}

figure{margin-top:28px}
figcaption{margin-top:10px;color:#7A7368;text-align:center}

.review-section{background:var(--panel);padding-block:56px}
.review-section h2{font-family:var(--font-display);font-weight:400;font-size:22px;text-align:center}
.review-list{margin-top:26px;grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.review-list{grid-template-columns:1fr}}
.review-list blockquote{background:#fff;padding:16px;font-size:14px}
.review-list cite{display:block;margin-top:8px;font-style:normal;font-size:12.5px;color:var(--rust);font-weight:700}

.related-links{padding-block:36px}
.related-links p{font-weight:700;font-size:13.5px;color:var(--rust);margin-bottom:12px}
.related-links a{background:#fff;border:1px solid var(--panel);padding:8px 14px;font-size:14px}

.cta-block{background:var(--ink);color:#fff;padding-block:48px}
.cta-block .cta-heading{font-family:var(--font-display);font-weight:400;font-size:23px}
.cta-block a[href^="tel:"]{margin-top:18px;background:var(--rust);color:#fff;font-weight:700;padding:14px 30px;display:inline-block}

.site-footer{background:#2E2A25;color:#B5AEA4;padding-block:14px;font-size:13px}

.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%}}
