.studio-contact-form{border:1px solid var(--studio-contrast-rule);background:var(--studio-contrast-surface);min-width:0;color:var(--studio-contrast-ink);color-scheme:dark;border-radius:1rem;padding:1.5rem}.studio-contact-form__heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1rem;margin-bottom:1.25rem;display:flex}.studio-contact-form__heading h2{font-size:1.375rem;font-weight:var(--studio-heading-weight);letter-spacing:-.025em;margin:0 0 .375rem;line-height:1.25}.studio-contact-form__heading p{color:var(--studio-contrast-muted);margin:0;font-size:.875rem;line-height:1.5}.studio-contact-form__heading .studio-contact-form__required-note{white-space:nowrap;font-size:.75rem}.studio-contact-form__fields,.studio-contact-form__services{border:0;min-width:0;margin:0;padding:0}.studio-contact-form__details{gap:1rem;display:grid}.studio-contact-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;min-width:0;display:grid}.studio-contact-form .studio-field{align-content:start;gap:.375rem;min-width:0}.studio-contact-form .studio-field label{color:var(--studio-contrast-ink);font-weight:400}.studio-contact-form .studio-field__icon{color:var(--studio-contrast-muted)}.studio-contact-form .studio-input{background:var(--studio-field-contrast-surface);color:var(--studio-contrast-ink);box-shadow:none}.studio-contact-form .studio-input::placeholder{color:var(--studio-contrast-muted)}.studio-contact-form .studio-input:hover{border-color:var(--studio-contrast-muted)}.studio-contact-form .studio-input:focus-visible{background:var(--studio-field-contrast-surface);border-color:var(--studio-contrast-ink);outline-color:var(--studio-contrast-ink)}.studio-contact-form .studio-input[aria-invalid=true]{border-color:var(--studio-critical-contrast);background:var(--studio-field-contrast-surface)}.studio-contact-form .studio-input[aria-invalid=true]:focus-visible{outline-color:var(--studio-critical-contrast)}.studio-contact-form .studio-textarea{min-height:7rem}.studio-contact-form .studio-field__help{color:var(--studio-contrast-muted);margin:0;font-size:.75rem;line-height:1.5}.studio-contact-form .studio-field__error{color:var(--studio-critical-contrast);align-items:baseline;gap:.375rem;margin:0;font-size:.8125rem;line-height:1.5;display:flex}.studio-field__error:before{content:"";background:linear-gradient(currentColor,currentColor) 50% 2px/1px 4px no-repeat,radial-gradient(circle,currentColor 1px,#0000 1px) 50% 7px/2px 2px no-repeat;border:1px solid;border-radius:50%;flex-shrink:0;width:.875rem;height:.875rem;margin-top:.125rem}.studio-contact-form__services{margin-top:1rem}.studio-contact-form__services>legend{border-top:1px solid var(--studio-contrast-rule);width:100%;margin:0 0 .5rem;padding:1rem 0 0}.studio-contact-form__services h3{font-size:1rem;font-weight:var(--studio-heading-weight);letter-spacing:-.015em;margin:0;line-height:1.5}.studio-contact-form__service-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.studio-contact-form__service-group{min-width:0}.studio-contact-form__service-group h4{color:var(--studio-contrast-muted);font-size:.875rem;font-weight:var(--studio-heading-weight);margin:0 0 .25rem;line-height:1.5}.studio-contact-form__choice{min-height:2.75rem;color:var(--studio-contrast-muted);cursor:pointer;border-radius:.375rem;grid-template-columns:1.125rem minmax(0,1fr);align-items:center;gap:.75rem;margin-inline:-.375rem;padding:.5rem .375rem;font-size:.875rem;line-height:1.5;display:grid}.studio-contact-form__choice:hover,.studio-contact-form__choice:focus-within{background:var(--studio-field-contrast-surface)}.studio-contact-form__choice:has(input:checked){color:var(--studio-contrast-ink)}.studio-contact-form__choice input{appearance:none;border:1px solid var(--studio-field-border);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;width:1.125rem;height:1.125rem;margin:0}.studio-contact-form__choice input:checked{border:2px solid var(--studio-contrast-ink);background:var(--studio-contrast-ink);box-shadow:inset 0 0 0 3px var(--studio-contrast-surface)}.studio-contact-form__choice input:focus-visible{outline:2px solid var(--studio-contrast-ink);outline-offset:3px}.studio-contact-form__choice input:disabled{cursor:wait}.studio-contact-form__choice--unsure{border-top:1px solid var(--studio-contrast-rule);border-radius:0;margin:.5rem 0 0;padding:.5rem 0}.studio-contact-form__services>.studio-field__help{min-height:1.5rem;margin-top:.25rem}.studio-contact-form__message{border-top:1px solid var(--studio-contrast-rule);margin-top:1rem;padding-top:1rem}.studio-contact-form__message-note{flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;display:flex}.studio-contact-form__counter{color:var(--studio-contrast-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.75rem;line-height:1.5}.studio-contact-form__footer{border-top:1px solid var(--studio-contrast-rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1rem;display:flex}.studio-contact-form__footer p{max-width:24rem;color:var(--studio-contrast-muted);text-wrap:pretty;flex:12rem;margin:0;font-size:.75rem;line-height:1.5}.studio-contact-form__footer .studio-button{background:var(--studio-contrast-ink);color:var(--studio-ink);cursor:pointer;flex-shrink:0}.studio-contact-form__footer .studio-button:hover{background:var(--studio-paper)}.studio-contact-form__footer .studio-button:focus-visible{outline-color:var(--studio-contrast-ink)}.studio-contact-form__footer .studio-button:disabled{cursor:not-allowed;opacity:.65}.studio-contact-form[aria-busy=true] .studio-button:disabled{cursor:wait}.studio-contact-form__error{border:1px solid var(--studio-critical-contrast);color:var(--studio-critical-contrast);border-radius:.75rem;margin-top:1.5rem;padding:1rem;font-size:.875rem;line-height:1.6}.studio-contact-form__error:focus-visible,.studio-contact-form__success:focus-visible{outline:2px solid var(--studio-contrast-ink);outline-offset:3px}.studio-contact-form__success{border:1px solid var(--studio-contrast-rule);background:var(--studio-field-contrast-surface);color:var(--studio-contrast-ink);border-radius:.75rem;align-items:flex-start;gap:.75rem;margin-top:1.5rem;padding:1rem;display:flex}.studio-contact-form__success svg{flex-shrink:0;margin-top:.125rem}.studio-contact-form__success h3{font-size:.875rem;font-weight:var(--studio-heading-weight);margin:0 0 .25rem;line-height:1.5}.studio-contact-form__success p{color:var(--studio-contrast-muted);margin:0;font-size:.875rem;line-height:1.6}.studio-contact-form [hidden]{display:none!important}.studio-contact-form__trap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.studio-contact-form__spinner{animation:.8s linear infinite studio-form-spin}@keyframes studio-form-spin{to{transform:rotate(360deg)}}@media (width<=36rem){.studio-contact-form{padding:1.25rem}.studio-contact-form__row,.studio-contact-form__service-groups{grid-template-columns:minmax(0,1fr)}.studio-contact-form__service-groups{gap:1rem}.studio-contact-form__footer .studio-button{margin-left:auto}}@media (prefers-reduced-motion:reduce){.studio-contact-form__spinner{animation:none}.studio-contact-form .studio-input{transition:none}}@media (forced-colors:active){.studio-contact-form__choice input{appearance:auto;accent-color:auto}}.contact-page{padding:2.5rem var(--studio-gutter) var(--studio-cta-spacing);overflow-wrap:anywhere}.contact-page__layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:clamp(2rem,5vw,4rem);margin-top:3rem;display:grid}.contact-page__intro{padding-top:1.5rem}.contact-page__label{color:var(--studio-muted);margin:0 0 1rem;font-size:.875rem;line-height:1.5}.contact-page h1{letter-spacing:-.035em;text-wrap:balance;max-width:10ch;margin:0;font-size:clamp(2.5rem,4.3vw,3.5rem);line-height:1.12}.contact-page__intro>p:not(.contact-page__label){max-width:28rem;color:var(--studio-muted);text-wrap:pretty;margin:1.5rem 0 0;font-size:1rem;line-height:1.65}.contact-page__email{border-top:1px solid var(--studio-rule);margin-top:2rem;padding-top:1.5rem}.contact-page__email p{max-width:25rem;color:var(--studio-muted);margin:0 0 1rem;font-size:.875rem;line-height:1.6}.contact-page__illustration{width:100%;height:auto;margin-top:2.5rem;display:block}.contact-page .studio-button{white-space:normal;max-width:100%}@media (width<=55rem){.contact-page__layout{grid-template-columns:minmax(0,1fr);gap:2.5rem}.contact-page__intro{padding-top:0}.contact-page h1{max-width:none}.contact-page__illustration{display:none}}@media (width<=48rem){.contact-page{padding-top:1.5rem}.contact-page h1{font-size:clamp(1.75rem,8vw,2.25rem);line-height:1.15}}
