.contact-form{width:100%;height:100%}.contact-form-container{--contact-inset:2rem;--contact-inner:1rem;position:relative;display:flex;flex-direction:column;width:100%;height:100%;padding:var(--contact-inset);overflow:hidden;border-radius:2rem;color:var(--color-primary-foreground);background-color:var(--color-primary)}.contact-form h1,.contact-form label,.contact-form p:not(.contact-form-field-error):not(.contact-form-status){color:inherit}.contact-form-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.25rem;width:100%;flex-shrink:0}.contact-form-bolt{width:auto;height:1rem;flex-shrink:0}.contact-form-meta{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:1rem;min-width:0}.contact-form-meta-label{margin:0;opacity:.72}.contact-form-meta-label:first-child{text-align:left}.contact-form-meta-label:nth-child(2){text-align:center}.contact-form-meta-label:nth-child(3){text-align:right}.contact-form-main{min-height:0;padding-inline:var(--contact-inner);padding-top:clamp(1.75rem,4vh,2.75rem);padding-bottom:calc(var(--contact-inset) + 1rem)}.contact-form-body,.contact-form-main{display:flex;flex:1;flex-direction:column}.contact-form-body{align-items:stretch;gap:2.5rem;width:100%}.contact-form-intro{display:flex;flex-direction:column;justify-content:space-between;gap:clamp(1.5rem,3vh,3rem);min-height:0}.contact-form-header{display:flex;flex-direction:column;gap:1.5rem}.contact-form-header h1{font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-.08em;line-height:1.05}.contact-form-header p{font-size:1.125rem;line-height:1.5;opacity:.92}.contact-form-details{display:flex;justify-content:space-between;gap:1rem;width:100%;max-width:26rem;padding-top:.75rem;border-top:1px dashed color-mix(in srgb,var(--color-primary-foreground) 35%,transparent)}.contact-form-details p{margin:0}.contact-form-direct{display:flex;flex-direction:column;gap:.35rem}.contact-form-direct-label{margin:0 0 .25rem;opacity:.72}.contact-form-direct-link{width:fit-content;font-size:1.0625rem;font-weight:600;color:var(--color-primary-foreground);text-decoration:underline;text-underline-offset:.2em}.contact-form-direct-link:hover{opacity:.8}.contact-form-fields{display:flex;flex-direction:column;gap:.75rem;width:100%}.contact-form-name-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.contact-form-fieldset{display:flex;flex-direction:column;gap:.75rem;min-width:0;margin:0;padding:0;border:none}.contact-form-sent{display:flex;flex-direction:column;width:100%}.contact-form .contact-form-field-error{margin:.35rem 0 0;padding:.5rem .7rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--color-destructive) 18%,var(--color-primary-foreground) 10%);border-left:3px solid var(--color-destructive);font-size:.8125rem;font-weight:550;line-height:1.4;color:var(--color-destructive);background-color:color-mix(in srgb,var(--color-milky-white) 72%,var(--color-primary))}.contact-form-field--invalid input,.contact-form-field--invalid textarea{border-color:color-mix(in srgb,var(--color-destructive) 35%,var(--color-primary-foreground));background-color:color-mix(in srgb,var(--color-milky-white) 40%,var(--color-primary));box-shadow:none}.contact-form-status{margin:0;padding:.9rem 1rem;border-radius:var(--radius-md);font-size:.9375rem;font-weight:550;line-height:1.45}.contact-form-status--error{color:var(--color-destructive-foreground);background-color:var(--color-destructive);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-destructive-foreground) 12%,transparent)}.contact-form-status--success{color:var(--color-secondary-foreground);background-color:var(--color-secondary);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-secondary-foreground) 10%,transparent)}.contact-form-field{display:flex;flex-direction:column;gap:.35rem}.contact-form-field label{opacity:.8}.contact-form-field input,.contact-form-field textarea{width:100%;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--color-primary-foreground) 22%,transparent);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:1rem;font-weight:550;line-height:1.45;color:var(--color-primary-foreground);background-color:color-mix(in srgb,var(--color-primary-foreground) 8%,var(--color-primary));transition:border-color .2s ease,box-shadow .2s ease}.contact-form-field input::placeholder,.contact-form-field textarea::placeholder{color:color-mix(in srgb,var(--color-primary-foreground) 45%,transparent)}.contact-form-field input:focus-visible,.contact-form-field textarea:focus-visible{border-color:var(--color-primary-foreground);outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary-foreground) 25%,transparent)}.contact-form-field textarea{min-height:10rem;resize:vertical}@media (min-width:1001px){.contact-form-main{--contact-menu-box-size:4.5rem;--contact-menu-clearance:1rem;--contact-inset-left:calc(var(--contact-menu-box-size) + var(--contact-menu-clearance));--contact-inner:2.25rem;padding-right:var(--contact-inner);padding-left:max(var(--contact-inner),calc(var(--contact-inset-left) - var(--contact-inset)))}.contact-form-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:end;gap:clamp(2.75rem,4.5vw,4.5rem)}.contact-form-intro{align-self:stretch;min-height:100%}.contact-form-details,.contact-form-header p{max-width:none}}.contact-form-submit-button{display:flex;width:100%;margin-top:.5rem}.contact-form-submit-button .button-label{flex:1}.contact-form-symbols{position:absolute;left:0;z-index:2;display:flex;justify-content:space-between;width:100%;padding:var(--contact-inset);pointer-events:none}.contact-form-symbols-bottom{bottom:0}@media (max-width:1000px){.contact-form{height:auto}.contact-form-container{--contact-inset:1.5rem;--contact-inner:0.75rem;height:auto;overflow:visible;border-radius:1.25rem}.contact-form-top{gap:.75rem}.contact-form-meta{grid-template-columns:1fr;gap:.25rem;text-align:center}.contact-form-meta-label:first-child,.contact-form-meta-label:nth-child(2),.contact-form-meta-label:nth-child(3){text-align:center}.contact-form-main{flex:none;min-height:auto;padding-top:1.5rem;padding-bottom:calc(var(--contact-inset) + 2.5rem)}.contact-form-body{flex:none}.contact-form-intro{flex:none;min-height:auto;justify-content:flex-start;gap:2rem;text-align:center;align-items:center}.contact-form-header{margin-top:4rem}.contact-form-name-row{grid-template-columns:1fr}.contact-form-field textarea{min-height:7rem}.contact-form-details,.contact-form-header p{width:100%;max-width:none}.contact-form-details{flex-direction:column;text-align:center;gap:.25rem}.contact-form-direct{align-items:center}}