.contact-page [hidden]{display:none!important}
.consultation{padding-block:clamp(56px,7vw,104px) var(--section-space)}
.consultation-label{margin-bottom:28px;color:var(--color-ink-muted)}
.consultation h1{font-size:clamp(52px,7vw,94px);letter-spacing:-.06em;line-height:1.15}
.consultation-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,6vw,88px);margin-top:64px;align-items:start}
.consultation-intro h2{font-size:clamp(21px,2vw,27px);line-height:1.8;margin-bottom:28px;letter-spacing:.01em}
.consultation p{font-size:15px;line-height:2;overflow-wrap:break-word;line-break:strict}
.consultation-intro p{margin-bottom:24px}
.conversation{min-width:0;border-top:1px solid var(--color-border);padding-top:24px}
.conversation-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.conversation-heading h2{font-size:18px;line-height:1.8;letter-spacing:0}
.consultation .prototype-notice{font-size:12px;color:var(--color-ink-muted);margin:18px 0 28px}
.messages{list-style:none;padding:0;margin:0 0 28px;max-height:520px;max-height:min(60svh,520px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}
.message{padding:20px 0;border-bottom:1px solid var(--color-border)}
.message:first-child{padding-top:0}
.message-author{display:block;font-size:11px;letter-spacing:.06em;color:var(--color-ink-muted);margin-bottom:8px}
.contact-page .message.visitor{background:#EDF2F5;padding:18px clamp(16px,2vw,20px);margin-block:12px;border-bottom:0;border-radius:4px}
.consultation .message p{white-space:pre-wrap;margin:0;overflow-wrap:anywhere}
.conversation label{display:block;font-size:13px;margin-bottom:12px}
.conversation textarea,.conversation input{display:block;width:100%;max-width:100%;border:1px solid var(--color-border);border-radius:0;background:#fff;color:var(--color-ink);font:inherit;font-size:16px;line-height:1.8;padding:14px;box-shadow:none}
.conversation textarea{resize:vertical;min-height:130px}
.conversation input:focus-visible,.conversation textarea:focus-visible{outline:2px solid #927b62;outline-offset:3px}
.consultation .field-hint{font-size:12px;color:var(--color-ink-muted);margin:10px 0 0}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:22px}
.conversation button{cursor:pointer;font-size:13px;line-height:1.6;min-height:44px}
.primary-button{background:var(--color-ink);color:#fff;border:1px solid var(--color-ink);padding:12px 20px}
.primary-button:hover{background:#28343e}
.conversation button:disabled{opacity:.55;cursor:wait}
.quiet-button{background:none;border:0;border-bottom:1px solid var(--color-border);color:var(--color-ink-muted);padding:8px 0;text-align:left}
.stage{border-top:1px solid var(--color-border);padding-top:26px}
.stage h3{font-size:21px;line-height:1.6;letter-spacing:0;margin-bottom:18px}
.stage p{font-size:14px}
.review-details{font-size:14px;line-height:2;margin:24px 0}
.review-details dt{font-size:12px;color:var(--color-ink-muted);margin-top:20px}
.review-details dd{margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.summary-fields{margin-top:24px}
.summary-fields label:not(:first-child){margin-top:24px}
.summary-fields textarea{min-height:112px}
.stage .summary-notice{margin-top:24px}
.inquiry-section{margin-top:36px;padding-top:28px;border-top:1px solid var(--color-border)}
.inquiry-section form{margin-top:24px}
.contact-page #inquiry-privacy-notice a{text-decoration:underline;text-underline-offset:3px}
.inquiry-section label:not(:first-child){margin-top:24px}
.inquiry-section .consent-label{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.9}
.inquiry-section .consent-label input{width:18px;height:18px;flex-shrink:0;margin:4px 0 0;padding:0;accent-color:var(--color-ink)}
.inquiry-section #inquiry-confirm{margin-top:28px}
.inquiry-section details{font-size:13px;line-height:1.9;margin-top:24px}
.inquiry-section summary{cursor:pointer}
.inquiry-section pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow-y:auto}
.inquiry-turnstile{margin-top:24px;min-height:65px}
.inquiry-section #inquiry-refresh{margin-top:16px}
.inquiry-section button:disabled{cursor:default}
.inquiry-section button[aria-busy="true"]{cursor:wait}
.privacy-direct-entry{padding-block:12px;border-block:1px solid var(--color-border)}
.inquiry-section select{display:block;width:100%;max-width:100%;padding:14px;border:1px solid var(--color-border);background:#fff;color:var(--color-ink);font:inherit;font-size:16px;line-height:1.8}
.inquiry-section select:focus-visible{outline:2px solid #927b62;outline-offset:3px}
@media(max-width:1024px){.consultation-grid{grid-template-columns:minmax(0,1fr);max-width:760px;gap:36px}.consultation-intro{max-width:640px}}
@media(max-width:767px){.consultation{padding-top:48px}.consultation-grid{margin-top:36px}.consultation h1{font-size:clamp(46px,12vw,72px)}.conversation-heading{align-items:flex-start}.conversation .form-actions{align-items:stretch;flex-direction:column}.primary-button{width:100%}.quiet-button{align-self:flex-start}.messages{max-height:55svh}.consultation-intro h2{font-size:21px}}
