.contact-title[data-contact-open]{display:block;border:0;padding:0;background:none;text-align:left;font:inherit;font-size:clamp(36px,7.2vw,112px);letter-spacing:-.06em;line-height:1.2}
#contact-dialog{width:min(760px,calc(100% - 32px));height:auto;max-width:760px;max-height:calc(100dvh - 32px);margin:auto;border:0;border-radius:28px;padding:0;background:#fafaf8;color:#20211f;box-shadow:0 24px 100px #0004;overflow:auto;overscroll-behavior:contain}
#contact-dialog::backdrop{background:#131515a8;backdrop-filter:blur(6px)}
.contact-dialog-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 32px;background:#fafaf8f5;z-index:2;border-bottom:1px solid #e6e6e0}.contact-dialog-head>span{font-size:12px;letter-spacing:.12em;font-weight:700}.contact-dialog-head button{padding:8px;border:0;background:none;font-size:14px}
.contact-dialog-body{padding:32px}.contact-dialog-body h2{font-size:clamp(30px,4.8vw,46px);line-height:1.3;letter-spacing:-.06em;font-weight:600}.contact-intro{font-size:16px;line-height:1.8;color:#636660;margin-top:16px}.contact-required{font-size:13px;color:#767b73;text-align:right;margin:28px 0 8px}
.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}#contact-form label{display:block;margin-top:18px;font-size:14px;line-height:1.7;font-weight:600}#contact-form label small{font-size:12px;font-weight:400;color:#777d73;margin-left:5px}
#contact-form input:not([type=checkbox]),#contact-form select,#contact-form textarea{display:block;width:100%;border:1px solid #d8dcd3;border-radius:12px;background:#fff;color:#20251e;font:inherit;font-size:16px;font-weight:400;padding:13px 14px;margin-top:7px;min-width:0}#contact-form textarea{resize:vertical;line-height:1.8}#contact-form input::placeholder,#contact-form textarea::placeholder{color:#83877d}#contact-dialog :focus-visible{outline:2px solid #44513a;outline-offset:3px}
.contact-references{margin-top:25px;padding:17px 20px;background:#edf0e8;border:1px solid #dce1d3;border-radius:16px}.contact-references summary{cursor:pointer;font-size:16px;font-weight:600;line-height:1.6}.contact-references summary span{display:block;font-size:13px;color:#70786a;font-weight:400;margin-top:3px}.contact-references>p{font-size:14px;line-height:1.7;margin:12px 0}.contact-selected{font-size:13px;line-height:1.7;color:#4d603d;margin:10px 2px 0;overflow-wrap:anywhere}
#reference-options{max-height:250px;overflow:auto;padding:4px 2px;margin-top:12px;display:grid;gap:8px}#reference-options label{display:flex;align-items:center;gap:12px;margin:0;padding:10px;background:white;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500}#reference-options input{width:18px;height:18px;flex-shrink:0;accent-color:#485940}#reference-options img{width:50px;height:45px;object-fit:cover;border-radius:6px;flex-shrink:0}#reference-options small{display:block;margin:0;font-size:12px}#reference-options label:has(input:checked){outline:2px solid #536248}#reference-options label:has(input:disabled:not(:checked)){opacity:.55}
#contact-form .contact-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-form .contact-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;font-weight:400;margin-top:23px}.contact-consent input{margin:5px 0 0;width:17px;height:17px;flex-shrink:0;accent-color:#485940}#contact-form .contact-consent small{display:block;margin:5px 0 0;line-height:1.7}#contact-status{font-size:14px;line-height:1.7;color:#784b32;margin-top:14px}
#contact-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:16px;border:0;border-radius:14px;padding:18px 22px;background:#252b21;color:#fff;font-size:16px;font-weight:600}#contact-submit:disabled{opacity:.5;cursor:wait}#contact-submit span{font-size:24px}#contact-success{padding:42px 0 25px;text-align:center}#contact-success[hidden],#contact-form[hidden]{display:none}#contact-success h3{font-size:28px;letter-spacing:-.05em;margin:20px 0 12px}#contact-success p{font-size:16px;line-height:1.9;color:#636660}.contact-success-mark{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#e3eada;color:#455936;font-size:28px;margin:auto}#contact-done{margin-top:28px;border:1px solid #cbd1c3;border-radius:12px;background:white;padding:14px 20px;font-size:14px}
@media(max-width:600px){#contact-dialog{border-radius:22px;width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.contact-dialog-head{padding:14px 20px}.contact-dialog-head>span{font-size:10px}.contact-dialog-body{padding:24px 20px}.contact-fields{grid-template-columns:1fr}.contact-references{padding:16px}.contact-title[data-contact-open]{font-size:clamp(30px,8.5vw,48px)}}

.contact-optional{margin-top:22px;border-block:1px solid #dddeda;padding:16px 0}.contact-optional summary{font-size:14px;cursor:pointer;font-weight:600;line-height:1.7}.contact-optional summary span{font-size:12px;font-weight:400;color:#6b7065;margin-left:10px}.contact-optional[open]{padding-bottom:20px}.contact-references{margin-top:16px}#contact-heading{word-break:keep-all}
