.page-contact .contact-title{padding-top:46px;padding-bottom:37px;border-bottom:1px solid var(--line)}
.contact-title .eyebrow{margin:0 0 12px}
.contact-title h1{font-size:clamp(38px,4.3vw,58px);line-height:1.5;letter-spacing:.12em;margin:0}
.contact-section{width:min(840px,calc(100% - 100px));margin:58px auto 100px}
.contact-note{font-size:13px;color:#69636a;margin:0 0 30px;line-height:1.8}
.contact-field{margin-bottom:27px}
.contact-field label{display:flex;align-items:center;gap:11px;margin-bottom:11px;font-family:var(--serif);font-size:15px;letter-spacing:.055em}
.field-required,.field-optional{display:inline-block;font-family:Arial,'Microsoft JhengHei',sans-serif;font-size:10px;line-height:1.65;letter-spacing:.04em;padding:2px 7px;border:1px solid #96743f}
.field-required{background:#846739;color:#fff;border-color:#846739}
.field-optional{color:#7a613b;background:transparent}
.contact-field input,.contact-field textarea{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:11px 14px;border:1px solid #c5beb2;border-radius:0;background:#fffdf9;color:#29263d;font:16px/1.65 Arial,'Microsoft JhengHei',sans-serif;transition:border-color .2s,box-shadow .2s}
.contact-field textarea{min-height:176px;resize:vertical}
.contact-field input:hover,.contact-field textarea:hover{border-color:#9c8d74}
.contact-field input:focus,.contact-field textarea:focus{border-color:#846739;outline:2px solid #846739;outline-offset:2px}
.contact-actions{display:flex;justify-content:center;align-items:center;gap:28px;margin-top:40px}
.contact-button{box-sizing:border-box;display:inline-flex;justify-content:center;align-items:center;min-height:54px;min-width:260px;padding:14px 28px;border:1px solid #29263d;background:#29263d;color:#fff;font-family:var(--serif);font-size:14px;line-height:1.7;letter-spacing:.1em;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s}
.contact-button:hover{background:#464158;border-color:#464158;color:#fff}
.contact-back{min-height:48px;padding:10px 3px;background:transparent;border:0;border-bottom:1px solid #9a8b73;color:#5b5351;font:14px/1.6 var(--serif);cursor:pointer;letter-spacing:.06em}
.contact-back:hover{color:#29263d;border-color:#29263d}
.contact-summary{margin:0;border-top:1px solid var(--line)}
.contact-summary>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:25px;border-bottom:1px solid var(--line);padding:20px 0}
.contact-summary dt{font-family:var(--serif);font-size:14px;color:#6b604f}
.contact-summary dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.9}
.contact-review .contact-actions{margin-top:22px}
@media(max-width:650px){
  .page-contact .contact-title{padding-top:30px;padding-bottom:27px}
  .contact-title .eyebrow{margin-bottom:9px}
  .contact-section{width:calc(100% - 44px);margin-top:35px;margin-bottom:65px}
  .contact-note{font-size:12px;margin-bottom:25px}
  .contact-field{margin-bottom:24px}
  .contact-field label{font-size:14px;margin-bottom:9px}
  .contact-field textarea{min-height:180px}
  .contact-actions{gap:22px;flex-wrap:wrap;margin-top:32px}
  .contact-button{min-width:240px;max-width:100%}
  .contact-summary>div{grid-template-columns:1fr;gap:6px;padding:17px 0}
  .contact-summary dt{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.contact-field input,.contact-field textarea,.contact-button{transition:none}}
.contact-review h2{font:400 26px/1.7 var(--serif);letter-spacing:.08em;margin:0 0 28px}
.contact-review h2:focus{outline:none}
.contact-status{margin:26px 0 0;color:#8c3e32;font-size:14px;line-height:1.8;text-align:center}
.contact-button:disabled,.contact-back:disabled{opacity:.6;cursor:wait}
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.thanks-content{text-align:center;padding:110px 0 125px}
.thanks-content .eyebrow{margin:0 0 22px}
.thanks-content h1{font:400 clamp(32px,4.5vw,54px)/1.6 var(--serif);letter-spacing:.1em;margin:0 0 25px}
.thanks-content>p:not(.eyebrow){font-size:15px;line-height:2;color:#69636a;margin:0 auto;max-width:38em}
.thanks-content .contact-actions{margin-top:40px}
@media(max-width:650px){.contact-review h2{font-size:23px}.thanks-content{padding:80px 0 90px}.thanks-content>p:not(.eyebrow){font-size:14px}.thanks-content .contact-actions{flex-direction:column-reverse;gap:22px}.contact-review .contact-actions{gap:20px}}

.contact-privacy-inline {
  margin: 28px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.9;
  letter-spacing: 0;
  overflow-wrap: break-word;
}
.contact-privacy-inline a,
.privacy-details a:not(.read-link) {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .22em;
}
.contact-privacy-inline a { display: inline-block; max-width: 100%; margin-inline-start: .35em; }
.contact-privacy-inline a:hover,
.privacy-details a:not(.read-link):hover { color: var(--ink); text-decoration-thickness: 2px; }
.contact-privacy-inline a:focus-visible,
.privacy-details a:focus-visible { outline: 2px solid var(--ink); outline-offset: 4px; }
.contact-privacy-inline + .contact-actions { margin-top: 18px; }
.contact-privacy-inline:lang(ko),
.privacy-details:lang(ko) { word-break: keep-all; }
.page-privacy .contact-title { padding-top: 46px; padding-bottom: 37px; border-bottom: 1px solid var(--line); }
.page-privacy .page-title.contact-title h1 { font-size: clamp(28px, 3.3vw, 42px); letter-spacing: .06em; }
.privacy-details { width: min(760px, calc(100% - 100px)); margin: 52px auto 90px; }
.privacy-details section + section { margin-top: 36px; }
.privacy-details h2 { font-size: 20px; line-height: 1.7; letter-spacing: .03em; margin-bottom: 14px; }
.privacy-details p,
.privacy-details li { color: var(--muted); font-size: 14px; line-height: 1.95; overflow-wrap: break-word; }
.privacy-details p + p { margin-top: 16px; }
.privacy-details ul { padding-inline-start: 1.3em; margin: 14px 0 0; }
.privacy-details li + li { margin-top: 7px; }
.privacy-details .privacy-return { margin-top: 38px; }
.privacy-details .read-link { margin-top: 0; }
@media (max-width: 650px) {
  .contact-privacy-inline { margin-top: 24px; }
  .page-privacy .contact-title { padding-top: 30px; padding-bottom: 27px; }
  .privacy-details { width: calc(100% - 44px); margin: 34px auto 64px; }
  .privacy-details section + section { margin-top: 28px; }
  .privacy-details h2 { font-size: 18px; }
}
