.contact-layout{grid-template-columns:minmax(210px,.65fr) minmax(0,1.65fr);gap:6%}
.contact-layout>aside{align-self:start;position:sticky;top:125px}
.contact-form{padding:clamp(25px,3.5vw,48px);min-width:0;background:#fff;border:1px solid #63212520}
.contact-form h2{font-size:clamp(32px,3vw,46px);margin:12px 0;color:var(--color-burgundy)}
.contact-form #form-intro{margin:0 0 28px;line-height:1.6;color:#615b59;min-height:3.2em}
.contact-form fieldset{padding:0;border:0;margin:0 0 25px;min-width:0}
.contact-form legend,.contact-form label,.message-field>label{font-size:14px;font-weight:600;line-height:1.5;color:#392e2e}
.contact-form legend{margin-bottom:12px}.contact-form small{font-weight:400}
.contact-form label{margin-bottom:0}
.contact-form input,.contact-form select{margin-top:0}
.contact-form input[type=radio],.contact-form input[type=checkbox]{padding:0}
.service-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.service-options label{grid-column:span 2;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;border:1px solid #c9bfbb;background:#fff;padding:14px 9px;min-height:54px;border-radius:5px;text-align:center}
.service-options label:nth-child(n+4){grid-column:span 3}
.service-options label:has(input:checked){background:var(--color-burgundy);color:#fff;border-color:var(--color-burgundy)}
.service-options label:has(input:focus-visible){outline:3px solid #a87746;outline-offset:3px}
.service-options input{accent-color:var(--color-burgundy);width:16px;height:16px;flex:0 0 16px;margin:0}
.service-options label:has(input:checked) input{accent-color:#d7bea0}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:25px}
.form-grid label{display:flex;flex-wrap:wrap;align-content:start;gap:7px;min-width:0}
.contact-form input:not([type=radio]):not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;min-width:0;padding:14px 15px;font:16px/1.5 var(--font-body);color:#292424;background:#fff;border:1px solid #c9bfbb;border-radius:4px;box-sizing:border-box}
.contact-form textarea{resize:vertical;min-height:155px}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#79716d;opacity:1}
.contact-form input:focus-visible,.contact-form textarea:focus-visible,.contact-form select:focus-visible{outline:2px solid var(--color-burgundy);outline-offset:3px}
.message-field>label{display:block}.message-field ul{padding-left:20px;margin:10px 0 15px;color:#615b59;font-size:14px;line-height:1.7}
.contact-form .field-help{font-size:12px;line-height:1.65;color:#6e625d;margin:10px 0 20px}
.form-consents{display:grid;gap:18px;margin:25px 0}
.form-consents .consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;font-weight:400;color:#5a4945;line-height:1.65}
.consent input{width:19px;height:19px;flex:0 0 19px;margin:3px 0 0;accent-color:var(--color-burgundy)}
.consent a{text-decoration:underline;text-underline-offset:3px}.consent small{display:block;margin-top:6px}
.contact-form .contact-submit{width:100%;justify-content:center;gap:20px;background:var(--color-burgundy);color:#fff;border-radius:4px;font-size:15px;min-height:54px}
.contact-form .form-footnote{margin-bottom:0}.contact-status:empty{display:none}.contact-status{font-size:14px;line-height:1.6;margin:20px 0 0;color:var(--color-burgundy)}
.workshop-fields[hidden]{display:none}
@media(max-width:1000px){.contact-layout{grid-template-columns:1fr;gap:32px}.contact-layout>aside{position:static}.contact-form{max-width:850px;width:100%;justify-self:center}}
@media(max-width:540px){.contact-form{padding:24px 18px}.form-grid{grid-template-columns:1fr;gap:17px}.service-options{grid-template-columns:repeat(2,minmax(0,1fr))}.service-options label,.service-options label:nth-child(n+4){grid-column:auto}.service-options label:last-child{grid-column:1/-1}.contact-form #form-intro{min-height:0}.contact-form legend,.contact-form label{font-size:13px}.form-consents .consent{font-size:12px}}
