/* base.css — reset + structure only. 색상·폰트는 페이지별 style.css의 :root 토큰에서 정의 */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;word-break:keep-all;overflow-x:hidden}
img,picture,video,svg{display:block;max-width:100%}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p,figure,blockquote{margin:0}
a{text-decoration:none;color:inherit}
button{font:inherit;cursor:pointer}
table{border-collapse:collapse;width:100%}

.wrap{max-width:1080px;margin-inline:auto;padding-inline:20px}

/* header/nav 뼈대 */
.site-header{width:100%}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px}
.site-header nav ul{display:flex;gap:16px;flex-wrap:wrap}

/* hero 뼈대 */
.hero{width:100%}
.hero h1{line-height:1.25}

/* main 섹션 뼈대 */
main{display:block}
.section{width:100%}

/* cta 블록 뼈대 */
.cta-block{width:100%;text-align:center}
.cta-block a[href^="tel:"]{display:inline-block}

/* footer 뼈대 */
.site-footer{width:100%}
.biz-info{text-align:center;margin:0}

/* 이미지 중앙 정렬 (스펙 [6]) */
figure{margin-inline:auto;max-width:880px}
figure img{width:100%;height:auto;margin-inline:auto}
figcaption{font-size:.875em}

/* 표 → 모바일 카드 전환 공통 골격 (색상은 페이지별 지정) */
.data-table{width:100%}
.data-table thead{display:table-header-group}
@media (max-width:640px){
  .data-table table,.data-table thead,.data-table tbody,.data-table tr,.data-table th,.data-table td{display:block;width:100%}
  .data-table thead{position:absolute;left:-9999px}
  .data-table tr{width:100%}
  .data-table td{display:flex;justify-content:space-between;gap:12px}
  .data-table td::before{content:attr(data-label);font-weight:700}
}

/* 접근성 */
a:focus-visible,button:focus-visible,[href]:focus-visible{outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
}

.review-list{display:grid;gap:16px}
.review-list blockquote{margin:0}

.related-links ul{display:flex;flex-wrap:wrap;gap:10px}
