/* Generated; edit the listed source files, then rebuild. */

/* SOURCE: styles/contact/01-grundregeln.css */

/* The enquiry form shares the porcelain white and cobalt brand palette. */
.contact-fields {
  border:0;
  padding:0;
  margin:0;
  min-width:0
}
.contact-fields:disabled {
  cursor:wait
}
.contact-fields>.fineprint {
  margin:22px 0 25px
}
.contact-fields button:disabled {
  cursor:wait;
  opacity:.65;
  transform:none
}
.attachments-field {
  margin-top:28px
}
.attachments-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  color:var(--primary)
}
.attachments-heading label {
  margin:0;
  color:var(--foreground)
}
.contact-form .optional-label {
  color:var(--muted-foreground);
  font-size:11px;
  margin-left:8px
}
.upload-area {
  position:relative;
  display:flex;
  align-items:center;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  min-height:196px;
  padding:25px 18px;
  border:1px dashed #a1afd9;
  background:#fbfcff;
  text-align:center;
  transition:background .2s,border-color .2s
}
.upload-area>svg {
  color:var(--primary);
  margin-bottom:7px
}
.upload-area>strong {
  font-size:14px;
  font-weight:500
}
.upload-area>span {
  font-size:13px;
  color:var(--muted-foreground)
}
.upload-area>p {
  margin-top:9px;
  font-size:11px;
  line-height:1.8;
  color:var(--muted-foreground)
}
.upload-area.is-dragging,.upload-area:focus-within {
  border-color:var(--primary);
  background:#eaf0ff
}
.upload-select {
  padding:0;
  border:0;
  border-bottom:1px solid #a8b4d7;
  background:transparent;
  color:var(--primary);
  font-weight:600
}
.upload-select:hover {
  border-color:var(--primary)
}
.contact-form .file-input {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
.attachment-count {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:16px;
  color:var(--muted-foreground);
  font-size:11px
}
.attachment-list {
  list-style:none;
  margin:8px 0 0;
  padding:0
}
.attachment-list>li {
  display:flex;
  gap:12px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px solid var(--border)
}
.file-preview {
  width:46px;
  height:50px;
  display:grid;
  place-items:center;
  flex-shrink:0;
  background:#e7edfb;
  color:var(--primary);
  overflow:hidden
}
.file-preview img {
  width:100%;
  height:100%;
  object-fit:cover
}
.attachment-list>li>div {
  flex:1;
  min-width:0
}
.attachment-list strong {
  display:block;
  overflow-wrap:anywhere;
  font-size:12px;
  font-weight:500;
  line-height:1.5
}


/* SOURCE: styles/contact/02-grundregeln.css */

.attachment-list>li>div>span {
  display:block;
  font-size:10px;
  color:var(--muted-foreground);
  margin-top:3px
}
.attachment-list a {
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  color:var(--primary);
  text-decoration:underline;
  text-underline-offset:3px;
  margin-top:3px
}
.remove-file {
  display:grid;
  place-items:center;
  flex-shrink:0;
  min-width:40px;
  min-height:44px;
  padding:8px;
  border:0;
  background:transparent;
  color:var(--muted-foreground)
}
.remove-file:hover {
  color:var(--primary);
  background:#e8edfa
}
.upload-privacy {
  font-size:11px;
  margin-top:14px;
  line-height:1.75
}
.upload-errors {
  margin-top:18px;
  padding:13px 16px;
  border-left:2px solid #9b3d45;
  background:#fff2f2;
  color:#84323a;
  font-size:12px;
  line-height:1.75;
  overflow-wrap:anywhere
}
.upload-errors p+p {
  margin-top:5px
}
.form-status>p {
  color:var(--primary)
}
.form-status:not(:empty) {
  margin-top:24px;
  padding:18px 20px;
  border-left:3px solid var(--primary);
  background:var(--cream);
  color:var(--primary);
  font-size:1rem;
  line-height:1.75
}
.contact-trap {
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  overflow:hidden
}
.form-retry {
  margin-top:18px;
  border:0;
  background:transparent;
  padding:8px 0;
  color:var(--primary);
  font-size:.9375rem;
  text-decoration:underline;
  text-underline-offset:4px
}
.contact-form .fineprint {
  font-size:.875rem;
  line-height:1.75
}
.contact-form .fineprint a {
  text-decoration:underline;
  text-underline-offset:3px;
  color:var(--primary);
  overflow-wrap:anywhere
}
.contact-form .direct-contact {
  margin-top:22px
}
.contact-form .upload-errors {
  font-size:.9375rem
}
.contact-form button:disabled {
  cursor:not-allowed
}
.prepare-button {
  min-height:54px
}
.is-spinning {
  animation:upload-spin 1s linear infinite
}
@keyframes upload-spin {
  to {
    transform:rotate(360deg)
  }
}


/* SOURCE: styles/contact/03-max-width-460px.css */

@media(max-width:460px) {
  .upload-area {
    padding:22px 12px
  }
  .attachment-list>li {
    gap:9px
  }
  .file-preview {
    width:36px;
    height:42px
  }
  .contact-form .prepare-button {
    width:100%;
    gap:10px
  }
  .contact-form .optional-label {
    font-size:10px
  }
  .draft-actions>.button {
    width:100%
  }
}
