/******************** // resetcode ********************/
html, body{overflow-x:hidden;}
html, body, div, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,textarea, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,input,select,button, time, mark, audio, video {
 margin:0;padding:0;border:0;font-size:16px;line-height:1.5em;font-family:'SUIT',sans-serif;font-weight:400;letter-spacing:-0.05em;vertical-align:baseline;color:#2c1e1c;word-break:keep-all;-webkit-tap-highlight-color:rgba(0,0,0,0);
}
img{line-height:0;}
.inner{width:80dvw;margin:0 auto;}
/* 공통 폰트 */
@font-face{font-family:'SUIT';src:url('../assets/fonts/SUIT-Variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;}
/* 공통 컬러 · 배경 · 기본 요소 */
:root{--ink:#2c1e1c;--muted:#716c64;--white:#fff;--paper:#f5f3ee;--line:#dedcd5;--accent:#b79a6b;--green:#435343;--gap:24px;}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:24px;}
body{background:var(--white);}
a{text-decoration:none;color:inherit;}
ul,ol{list-style:none;}
table{border-collapse:collapse;width:100%;}
img,video{display:block;max-width:100%;}
button,summary{cursor:pointer;}
button,input,select,textarea{font:inherit;}
button{background:none;}
button:disabled{cursor:default;opacity:.65;}
[hidden]{display:none!important;}
:focus-visible{outline:3px solid var(--accent);outline-offset:5px;}
::selection{background:#ded4c1;color:var(--ink);}
.text-muted{color:var(--muted);}
.bg-paper{background:var(--paper);}
.bg-green{background:var(--green);}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.12em;color:var(--green);}
.title-xl{font-size:64px;font-weight:700;line-height:1.32;letter-spacing:-.055em;}
.title-lg{font-size:42px;font-weight:600;line-height:1.4;letter-spacing:-.05em;}
.title-md{font-size:30px;font-weight:600;line-height:1.48;}
.body-copy{font-size:17px;line-height:1.85;color:var(--muted);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:56px;padding:16px 28px;background:var(--ink);color:var(--white);font-size:15px;font-weight:600;text-align:center;transition:background .2s,color .2s;}
.btn:hover{background:var(--green);}
.btn-white{background:var(--white);color:var(--ink);}
.btn-white:hover{background:var(--paper);}
.btn-soft{background:var(--paper);color:var(--ink);}
.text-link{display:inline-flex;align-items:center;gap:20px;font-size:15px;font-weight:600;padding-block:8px;border-bottom:1px solid transparent;}
.text-link:hover{border-color:currentColor;}
.arrow{color:inherit;font-size:22px;line-height:1;}
.section-pad{padding-block:110px;}
.skip-link{display:block;height:0;overflow:hidden;text-align:center;background:var(--ink);color:white;}
.skip-link:focus{height:auto;padding:12px;}
/* 공통 입력 폼 · 버튼 · 상태 안내 */
.preserve{white-space:pre-line;overflow-wrap:anywhere;}
.stack{display:flex;flex-direction:column;gap:24px;}
.actions{display:flex;flex-wrap:wrap;gap:16px;padding-block:28px;}
.badge{display:inline-flex;align-items:center;padding:6px 13px;border-radius:30px;font-size:12px;background:var(--paper);color:var(--green);font-weight:600;}
.notice,.success-message,.error-message{padding:20px 24px;margin-block:20px;line-height:1.8;font-size:14px;background:var(--paper);border-left:3px solid var(--accent);}
.success-message{background:#edf3ec;border-color:var(--green);}
.error-message{background:#fff0ed;border-color:#b64633;color:#7f291e;}
.form-field{display:flex;flex-direction:column;gap:10px;min-width:0;}
.form-field>span{font-size:14px;font-weight:600;}
.form-field small{font-size:11px;color:var(--muted);font-weight:400;}
.form-field input,.form-field textarea,.form-field select,.search-form input,.slot-form select{width:100%;min-height:52px;padding:14px 16px;border:1px solid var(--line);background:white;border-radius:2px;}
.form-field textarea{resize:vertical;min-height:140px;}
.form-field input[type=file]{font-size:13px;}
.check-row{display:flex;gap:12px;align-items:flex-start;}
.check-row input{margin-top:4px;flex-shrink:0;accent-color:var(--green);width:18px;height:18px;}
.check-row span{font-size:14px;}
.small-link{font-size:13px;text-decoration:underline;text-underline-offset:4px;}
.price{font-size:27px;font-weight:600;}
/* 공통 스크롤 · Lenis 활성 상태 */
html.lenis.lenis-smooth{scroll-behavior:auto!important}
html.lenis body{overflow-x:clip}
/* 공통 배치 유틸리티 · flex / grid / 간격 */
/* acreve setting.css 기반: 이 프로젝트에서 사용하는 공통 유틸리티.
 * 원본: https://koreastunning.github.io/acreve/setting.css
 * 원본 규칙을 유지하며 필요한 클래스만 로컬 관리합니다. 반응형 규칙은 media.css. */
.wdf { display:flex; }
.wdg { display:grid; }
.wJc { justify-content:center; }
.wJs { justify-content:flex-start; }
.wJe { justify-content:flex-end; }
.wJb { justify-content:space-between; }
.wAc { align-items:center; }
.wAs { align-items:flex-start; }
.wAt { align-items:stretch; }
.wFw { flex-wrap:wrap; }
.wFDc { flex-direction:column; }
.wg24 { gap:24px; }
.wfW7 { font-weight:700; }
/* 공통 부드러운 스크롤 · Lenis 기본 스타일 (라이선스: assets/vendor/lenis/LICENSE) */
html.lenis,
html.lenis body {
  height: auto;
}
.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}
.lenis [data-lenis-prevent],
.lenis [data-lenis-prevent-wheel],
.lenis [data-lenis-prevent-touch],
.lenis [data-lenis-prevent-vertical],
.lenis [data-lenis-prevent-horizontal] {
  overscroll-behavior: contain;
}
.lenis.lenis-smooth iframe {
  pointer-events: none;
}
.lenis.lenis-autoToggle {
  transition-property: overflow;
  transition-duration: 1ms;
  transition-behavior: allow-discrete;
}

/* 공통 브랜드 로고: 제공된 원본 이미지 */
.brand-logo{display:block;width:116px;height:116px;object-fit:contain;mix-blend-mode:multiply;}
