/* 보도블럭시공하자 — 전용 스타일 (팔레트: #1B1B1B / #FFFFFF / #D00000, 타입스케일 1.414, 패딩 120px, 라운드 4px) */
@import url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2306@1.0/Paperlogy.css');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;700;900&display=swap');

:root{
  --dp-def-primary:#1B1B1B;
  --dp-def-bg:#FFFFFF;
  --dp-def-accent:#D00000;
  --dp-def-radius:4px;
  --dp-def-font-head:"Paperlogy","Pretendard","Noto Sans KR",sans-serif;
  --dp-def-font-body:"Noto Sans KR","Pretendard",sans-serif;
}

.site-header{position:sticky;top:0;z-index:60;}

/* 타입 스케일 1.414 기준, 고대비 대형 타이포 */
.dp-def-hero h1{font-family:var(--dp-def-font-head);font-size:clamp(38px,7vw,58px);line-height:1.08;letter-spacing:-.01em;}
.section-head h2{font-family:var(--dp-def-font-head);font-size:32px;}
.guide-item h3{font-family:var(--dp-def-font-head);font-size:19px;}
.dp-def-lead{font-family:var(--dp-def-font-body);font-size:19px;line-height:1.9;color:var(--dp-def-primary);font-weight:700;}
.dp-def-body{font-family:var(--dp-def-font-body);font-size:16.5px;line-height:1.9;color:#2c2c2c;max-width:820px;}
.dp-def-body + .dp-def-body{margin-top:20px;}
.dp-def-eyebrow{background:var(--dp-def-primary);color:#fff;border-radius:var(--dp-def-radius);}

/* 섹션 패딩 120px 계열 */
.section{padding:120px 0;}
@media (max-width:768px){.section{padding:64px 0;}}

/* 히어로: 고대비 대형 타이포 */
.dp-def-hero{background:var(--dp-def-primary);}
.dp-def-hero p{font-family:var(--dp-def-font-body);}
.dp-def-hero .breadcrumb a:hover{color:var(--dp-def-accent);}
.dp-def-hero .btn-primary{background:var(--dp-def-accent);color:#fff;border-radius:var(--dp-def-radius);}
.dp-def-hero .btn-primary:hover{background:#a80000;}
.dp-def-hero .btn-outline{border-radius:var(--dp-def-radius);border-color:#fff;}

/* SVG 도식 */
.dp-def-svg{width:100%;height:auto;background:var(--dp-def-bg);border:1px solid #eee;border-radius:var(--dp-def-radius);padding:12px;}

/* 표 */
.dp-def-table-wrap{overflow-x:auto;border-radius:var(--dp-def-radius);border:1px solid #ddd;}
.dp-def-table{width:100%;border-collapse:collapse;min-width:520px;background:#fff;}
.dp-def-table caption{text-align:left;font-size:14px;font-weight:700;color:var(--dp-def-primary);padding:14px 16px;background:#f2f2f2;}
.dp-def-table th,.dp-def-table td{padding:14px 16px;font-size:15px;text-align:left;border-bottom:1px solid #eee;}
.dp-def-table th{background:var(--dp-def-primary);color:#fff;font-weight:700;}
.dp-def-table tbody tr:last-child td{border-bottom:none;}
.dp-def-table-note{margin-top:14px;font-size:13.5px;color:#555;}

/* 사진 캡션 */
.photo-caption{margin-top:8px;font-size:13.5px;font-weight:700;color:var(--dp-def-primary);text-align:center;}
.process-item{border-radius:var(--dp-def-radius);}

/* 접근성 · 모션 */
a:focus-visible,button:focus-visible{outline:3px solid var(--dp-def-accent);outline-offset:2px;}
@media (prefers-reduced-motion:reduce){.process-item img{transition:none;}}

/* footer가 4열(브랜드/바로가기/관련페이지/문의)이라 전역 3열 정의에 최소 오버라이드 */
.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr;}
@media (max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:768px){.footer-grid{grid-template-columns:1fr;}}
