.sf-contact-hero{padding:42px 0 52px;background:linear-gradient(115deg,#eaddc8,#f6f0e7);border-bottom:1px solid var(--line)}
.sf-contact-back{display:block;margin-bottom:32px;color:var(--muted);font-size:11px}
.sf-contact-hero h1{font:400 clamp(48px,6vw,76px)/1.04 var(--serif);margin:14px 0 18px;letter-spacing:-.025em}
.sf-contact-hero p{max-width:650px;font-size:15px;line-height:1.8;color:var(--walnut);margin:0}
.sf-contact-pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:23px}
.sf-contact-pills span{padding:8px 12px;border:1px solid #cdbba3;border-radius:30px;color:var(--walnut);font-size:11px}
.sf-contact-section{padding:58px 0}
.sf-contact-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:32px}
.sf-contact-form-card{padding:36px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}
.sf-contact-form-card h2,.sf-contact-team h2,.sf-contact-faq h2{font:400 36px/1.1 var(--serif);margin:12px 0 15px}
.sf-contact-muted{color:var(--muted);font-size:12px;line-height:1.7}
.sf-contact-form{margin-top:28px}
.sf-contact-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}
.sf-contact-field{display:flex;flex-direction:column;gap:9px;min-width:0}
.sf-contact-field label{font-size:11px;font-weight:700;color:var(--walnut)}
.sf-contact-field label span{color:var(--danger)}
.sf-contact-field label small{margin-left:4px;font-size:10px;font-weight:400;color:var(--muted)}
.sf-contact-field input,.sf-contact-field select,.sf-contact-field textarea{width:100%;min-width:0;min-height:46px;padding:12px 13px;border:1px solid #d7c8b5;border-radius:2px;background:#fffdf8;color:var(--espresso);font:13px/1.5 var(--sans)}
.sf-contact-field textarea{resize:vertical;min-height:150px}
.sf-contact-field input:focus,.sf-contact-field select:focus,.sf-contact-field textarea:focus{outline:2px solid #b78a55;outline-offset:2px}
.sf-contact-field [aria-invalid=true]{border-color:var(--danger)}
.sf-contact-full{grid-column:1/-1}
.sf-contact-error{color:var(--danger);font-size:11px;line-height:1.5}
.sf-contact-submit{display:flex;align-items:center;gap:20px;margin-top:25px}
.sf-contact-submit button{gap:25px;min-height:48px;white-space:nowrap}
.sf-contact-submit button:disabled{opacity:.6;cursor:wait}
.sf-contact-submit small{font-size:10px;line-height:1.7;color:var(--muted)}
.sf-contact-success,.sf-contact-errors{padding:18px 20px;margin-top:24px;border:1px solid #a8bda1;border-left:4px solid var(--green);background:#f0f6ec;line-height:1.7}
.sf-contact-success p{margin:5px 0 0;font-size:12px}.sf-contact-errors{border-color:#cfa39d;border-left-color:var(--danger);background:#fff3f0;color:var(--danger)}.sf-contact-errors ul{margin:8px 0 0;padding-left:18px;font-size:12px}
.sf-contact-aside{display:grid;gap:22px;min-width:0}
.sf-contact-team{padding:34px;background:var(--espresso);color:var(--paper)}
.sf-contact-team .sf-kicker{color:#d8b784}
.sf-contact-team p{font-size:13px;line-height:1.8;color:#d9cbbb}
.sf-contact-details{display:grid;gap:20px;margin-top:25px;padding-top:24px;border-top:1px solid #69513c;overflow-wrap:anywhere}
.sf-contact-details small{display:block;font-size:10px;color:#d8b784;text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px}
.sf-contact-details a{font-size:14px;text-decoration:underline;text-underline-offset:4px}
.sf-contact-details p{margin:0}
.sf-contact-address{white-space:pre-line;overflow-wrap:anywhere;line-height:1.8}
.sf-contact-help{padding:27px;border:1px solid var(--line);background:var(--paper)}
.sf-contact-help h3{font:400 27px/1.2 var(--serif);margin:10px 0 19px}
.sf-contact-help>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--line)}
.sf-contact-help>a:hover strong{color:var(--bronze)}
.sf-contact-help strong{font-size:12px}.sf-contact-help small{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.5}
.sf-contact-faq{padding-bottom:70px}.sf-contact-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px;align-items:start}
.sf-contact-faq details{border:1px solid var(--line);padding:21px;background:var(--paper)}
.sf-contact-faq summary{font-weight:600;font-size:12px;cursor:pointer;line-height:1.7}
.sf-contact-faq details p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:0}
@media(max-width:900px){.sf-contact-grid{grid-template-columns:1fr}.sf-contact-aside{grid-template-columns:1fr 1fr}.sf-contact-form-card{padding:30px}}
@media(max-width:560px){.sf-contact-hero{padding:30px 0 36px}.sf-contact-back{margin-bottom:23px}.sf-contact-hero p{font-size:13px}.sf-contact-section{padding:30px 0}.sf-contact-form-card{padding:22px 18px}.sf-contact-fields,.sf-contact-aside,.sf-contact-faq-grid{grid-template-columns:1fr}.sf-contact-submit{align-items:stretch;flex-direction:column;gap:12px}.sf-contact-submit button{width:100%}.sf-contact-team,.sf-contact-help{padding:25px}.sf-contact-faq{padding-bottom:40px}}
