/* 보도블럭시공추천 — 전용 스타일 (팔레트: #241E4E / #F3F0FF / #7B61FF, 타입스케일 1.333, 패딩 96px, 라운드 0px 계열) */
@import url('https://cdn.jsdelivr.net/gh/webfontworld/nanumsquareneo/nanumsquareneo.css');

:root{
  --dp-rec-primary:#241E4E;
  --dp-rec-bg:#F3F0FF;
  --dp-rec-accent:#7B61FF;
  --dp-rec-radius:0px;
  --dp-rec-font-head:"Nanum Square Neo","Pretendard","Noto Sans KR",sans-serif;
  --dp-rec-font-body:"Pretendard","Noto Sans KR",sans-serif;
}

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

/* 타입 스케일 1.333 기준 */
.dp-rec-hero h1{font-family:var(--dp-rec-font-head);font-size:clamp(32px,4.6vw,46px);}
.section-head h2{font-family:var(--dp-rec-font-head);font-size:30px;}
.guide-item h3{font-family:var(--dp-rec-font-head);font-size:18px;}
.dp-rec-lead{font-family:var(--dp-rec-font-body);font-size:19px;line-height:1.9;color:var(--dp-rec-primary);font-weight:600;text-align:center;}
.dp-rec-body{font-family:var(--dp-rec-font-body);font-size:16.5px;line-height:1.85;color:#3a3560;max-width:820px;}
.dp-rec-body + .dp-rec-body{margin-top:20px;}
.dp-rec-eyebrow{background:#e3ddff;color:#5b3ee0;border-radius:var(--dp-rec-radius);}

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

/* 히어로: 중앙 정렬 + 3열 카드 */
.dp-rec-hero{background:linear-gradient(180deg,var(--dp-rec-primary) 0%,#150f33 100%);}
.dp-rec-hero-inner{text-align:center;display:flex;flex-direction:column;align-items:center;}
.dp-rec-hero .breadcrumb{justify-content:center;display:flex;}
.dp-rec-hero p{max-width:560px;}
.dp-rec-hero .btn-group{justify-content:center;}
.dp-rec-hero .btn-primary{background:var(--dp-rec-accent);border-radius:var(--dp-rec-radius);}
.dp-rec-hero .btn-primary:hover{background:#6647e0;}
.dp-rec-hero .btn-outline{border-radius:var(--dp-rec-radius);}

.dp-rec-cards{
  margin-top:44px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
  width:100%;max-width:820px;
}
.dp-rec-card{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.16);
  border-radius:var(--dp-rec-radius);
  padding:22px 16px;
  font-size:14px;color:#e2ddff;
  text-align:center;
}
.dp-rec-card span{display:block;font-size:15px;font-weight:800;color:#fff;margin-bottom:8px;}

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

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

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

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

@media (max-width:640px){
  .dp-rec-cards{grid-template-columns:1fr;}
}

/* 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;}}
