/* 공통 헤더·푸터 — 모든 페이지(견적 포함)가 이 한 파일만 따른다. 마지막에 로드되어 다른 규칙을 덮는다 */
.hdw{position:sticky;top:0;z-index:60;background:#fff;border-bottom:2px solid #000}
.hd{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--m);padding:var(--m) var(--m) 0;align-items:start;font-family:Inter,"Pretendard Variable",Pretendard,sans-serif;font-size:var(--fs);line-height:1.45}
.hd .sy{display:block;height:calc(var(--fn)*1.5);padding-bottom:var(--m);box-sizing:content-box}
.hd .sy img{display:block;height:100%;width:auto}
.hd a.m{display:flex;align-items:center;height:calc(var(--fn)*1.5);padding-bottom:var(--m);box-sizing:content-box;font-size:var(--fn);line-height:1;letter-spacing:-.03em;justify-self:start;color:#000;font-weight:400;text-decoration:none;font-style:normal}
.hd a.m:hover,.hd a.m.on{font-style:italic}
@media(max-width:900px){.hd .sy{height:34px}}
.ft{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:2px solid #000;z-index:20;font:400 var(--fs)/1.45 Inter,"Pretendard Variable",Pretendard,sans-serif;letter-spacing:-.012em;color:#000}
.ft div{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--m);align-items:center;padding:.7em var(--m)}
.ft *{font:inherit;color:inherit;border:0;background:none;line-height:1.45;text-decoration:none}
.ft div>*:nth-child(2){grid-column:2}
.ft div>*:last-child{grid-column:4;justify-self:end}
.ft button{padding:1px 6px;cursor:pointer}.ft button:hover{font-style:italic}
.ft .fmid{display:flex;gap:1.6em}.ft .fmid button{padding:0}
@media(max-width:700px){.ft div{display:flex;justify-content:space-between}.ft .em,.ft .email-button{display:none}.ft .fmid{display:flex}.ft .fmid a{padding:.4em 0}}
.hd a.m,.ft *,.mode-nav button{font-synthesis:style}
body.stepped-estimate{font-synthesis:style}
