.contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(50px,8vw,160px);align-items:start}
.contact-intro{max-width:430px}
.contact-intro>p:first-child{font-size:clamp(24px,2.5vw,44px);font-weight:500;letter-spacing:-.035em;line-height:1.2;margin-bottom:24px}
.contact-intro>p:nth-child(2){font-size:15px;line-height:1.65;max-width:35ch;margin-bottom:36px}
.contact-intro .contact-email{font:500 clamp(16px,1.65vw,30px)/1.5 var(--body);letter-spacing:-.025em;display:inline-block;width:auto;padding-bottom:9px;overflow-wrap:anywhere}
.contact-form{position:relative;min-width:0}
.contact-fields{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 30px}
.contact-field{display:flex;flex-direction:column;gap:12px;min-width:0}
.contact-field>label{font-size:12px;line-height:1.5;font-weight:500}
.contact-field>label>span{font-weight:400;opacity:.72;margin-left:4px}
.contact-field input,.contact-field select,.contact-field textarea{font:400 16px/1.5 var(--body);border:0;border-bottom:1px solid rgb(255 255 255 / .55);border-radius:0;outline:none;background:transparent;color:white;width:100%;min-width:0;padding:12px 0 16px;box-shadow:none;transition:border-color .2s}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:rgb(255 255 255 / .63);opacity:1}
.contact-field select{appearance:none;-webkit-appearance:none;cursor:pointer}
.contact-field select option{background:white;color:var(--ink)}
.contact-field textarea{min-height:136px;resize:vertical}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--cyan);box-shadow:0 2px 0 var(--cyan)}
.contact-field [aria-invalid=true]{border-color:var(--yellow)}
.contact-field-wide{grid-column:1/-1}
.contact-trap{position:absolute;left:-10000px;top:0;width:1px;height:1px;overflow:hidden}
.contact-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px}
.contact-submit{font:500 14px/1.4 var(--body);display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:18px 28px;background:white;color:var(--purple-5);border:1px solid white;white-space:nowrap;transition:background .2s,color .2s}
.contact-submit:hover{background:var(--yellow);border-color:var(--yellow)}
.contact-submit:disabled{opacity:.65;cursor:wait}
.contact-actions>p{font-size:10px;line-height:1.7;max-width:26ch;color:rgb(255 255 255 / .8)}
.contact-form-status{font-size:13px;line-height:1.6;min-height:1.6em;margin-top:18px;max-width:50ch}
.contact-form-status:empty{margin-top:0;min-height:0}
.contact-success{border-top:1px solid rgb(255 255 255 / .55);padding:32px 0;outline:none}
.contact-success h3{font-size:clamp(36px,4vw,68px);line-height:1.05;margin-bottom:22px}
.contact-success p{font-size:16px;line-height:1.6;max-width:36ch}
@media(max-width:1100px){.contact-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px}.contact-fields{gap:26px 22px}.contact-actions{align-items:flex-start;flex-direction:column;gap:16px}.contact-actions>p{max-width:none}}
@media(max-width:899px){.contact-layout{grid-template-columns:1fr;gap:50px}.contact-intro{max-width:560px}.contact-intro>p:first-child{font-size:32px}.contact-intro>p:nth-child(2){max-width:44ch;margin-bottom:25px}.contact-intro .contact-email{font-size:21px}.contact-actions{flex-direction:row;align-items:center}.contact-actions>p{max-width:26ch}}
@media(max-width:600px){.contact-layout{gap:42px}.contact-intro>p:first-child{font-size:27px}.contact-intro>p:nth-child(2){font-size:14px}.contact-intro .contact-email{font-size:19px}.contact-fields{grid-template-columns:1fr;gap:24px}.contact-field>label{font-size:11px}.contact-field input,.contact-field select,.contact-field textarea{font-size:16px;padding-top:8px}.contact-actions{align-items:stretch;flex-direction:column;gap:15px}.contact-submit{width:100%}.contact-actions>p{max-width:none}.contact-success h3{font-size:38px}}
