.elementor-1721 .elementor-element.elementor-element-3ddaf464 > .elementor-background-overlay{opacity:1;}.elementor-1721 .elementor-element.elementor-element-3ddaf464 > .elementor-shape-top svg{height:39px;}.elementor-1721 .elementor-element.elementor-element-b4f5ba1 > .elementor-widget-container{margin:28px 15px -15px 0px;padding:0px 0px 0px 0px;}.elementor-1721 .elementor-element.elementor-element-b4f5ba1{text-align:end;}.elementor-1721 .elementor-element.elementor-element-2894e2b > .elementor-widget-container{margin:28px 15px -15px 0px;padding:0px 0px 0px 0px;}.elementor-1721 .elementor-element.elementor-element-2894e2b{text-align:end;}.elementor-1721 .elementor-element.elementor-element-e3e87a4{--spacer-size:2px;}.elementor-1721 .elementor-element.elementor-element-5ac756b{text-align:justify;font-family:"Roboto", Sans-serif;}.elementor-1721 .elementor-element.elementor-element-17b90df{top:0px;bottom:auto;z-index:10;margin-top:0px;margin-bottom:0px;padding:0px 50px 0px 50px;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header{top:0px;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header-flex{top:0px;}.wpr-hidden-header{z-index:10;}.wpr-hidden-header-flex{z-index:10;}.elementor-1721 .elementor-element.elementor-element-e5b485c{--divider-border-style:solid;--divider-color:#004B95;--divider-border-width:3px;}.elementor-1721 .elementor-element.elementor-element-e5b485c .elementor-divider-separator{width:100%;}.elementor-1721 .elementor-element.elementor-element-e5b485c .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1721 .elementor-element.elementor-element-6f4117e .pp-contact-form-7 .wpcf7-not-valid-tip{display:block !important;}.elementor-1721 .elementor-element.elementor-element-6f4117e .pp-contact-form-7 .wpcf7-validation-errors{display:block !important;}.elementor-1721 .elementor-element.elementor-element-6f4117e .pp-contact-form-7 .wpcf7-form p:not(:last-of-type) .wpcf7-form-control-wrap{margin-bottom:20px;}.elementor-1721 .elementor-element.elementor-element-6f4117e .pp-contact-form-7 .wpcf7-form p:nth-last-of-type(1){text-align:left;}.elementor-1721 .elementor-element.elementor-element-6f4117e .pp-contact-form-7 .wpcf7-form input[type="submit"]{display:inline-block;width:200px;background-color:#004B95;}@media(min-width:768px){.elementor-1721 .elementor-element.elementor-element-7e66502{width:65%;}.elementor-1721 .elementor-element.elementor-element-051f998{width:35%;}}@media(max-width:1024px){.elementor-1721 .elementor-element.elementor-element-17b90df{top:0px;bottom:auto;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header{top:0px;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header-flex{top:0px;}}@media(max-width:767px){.elementor-1721 .elementor-element.elementor-element-17b90df{top:0px;bottom:auto;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header{top:0px;}.elementor-1721 .elementor-element.elementor-element-17b90df + .wpr-hidden-header-flex{top:0px;}}/* Start custom CSS for pp-contact-form-7, class: .elementor-element-6f4117e *//* =======================================================
   BASIS-STYLES
   ======================================================= */

.wpcf7 form {
  background-color: #f9f9f9;
  padding: 1.8rem;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  max-width: 1120px;
  margin: 0 auto;

  font-family: 'Roboto', Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
}

/* Placeholder in Contact Form 7 */
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
    color: rgba(0, 0, 0, 0.25); /* sehr blass */
    font-weight: 300;           /* dünne Schrift */
    opacity: 1;                 /* für Browser-Kompatibilität */
}

/* =======================================================
   LAYOUT
   ======================================================= */

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

.form-row + .form-row {
  margin-top: 1.2rem;
}

.spacer {
  display: block;
  width: 100%;
}

.spacer.small {
  height: 20px;
}

.spacer.medium {
  height: 12px;
}

.spacer.large {
  height: 24px;
}

/* =======================================================
   LABELS (FIX: harmonischer Abstand)
   ======================================================= */

.wpcf7 label {
  display: block;
  margin-top: 0.75rem;
  margin-bottom: 0.4rem; /* 👉 kleiner & sauberer */
  font-weight: 600;
  color: #333;
  font-size: 0.95em;
}

/* =======================================================
   FELDER
   ======================================================= */

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="file"],
.wpcf7 input[type="date"],
.wpcf7 input[type="number"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 1em;
  background-color: #fff;
  box-sizing: border-box;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Fokus */
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
  border-color: #0073aa;
  box-shadow: 0 0 4px rgba(0, 115, 170, 0.25);
  outline: none;
}


/* =======================================================
   RADIO (CLEAN VERSION – nur einmal!)
   ======================================================= */

.wpcf7 .wpcf7-radio {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 18px;

  margin-top: 0.rem;   /* 👉 Abstand unter Label */
  margin-bottom: 2rem;  /* 👉 Abstand zum nächsten Feld */
  align-items: center;
}

.wpcf7 .wpcf7-list-item {
  margin: 0;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.wpcf7 input[type="radio"] {
  margin-right: 7px;
  accent-color: #0073aa;
}

/* =======================================================
   BUTTON
   ======================================================= */

.wpcf7 input[type="submit"] {
  background-color: #0073aa;
  color: white;
  border: none;
  padding: 0.85rem 1.6rem;
  font-size: 1em;
  border-radius: 6px;
  cursor: pointer;
  margin-top: 30px;
  transition: background-color 0.2s ease, transform 0.05s ease;
}

.wpcf7 input[type="submit"]:hover {
  background-color: #005f8c;
}

.wpcf7 input[type="submit"]:active {
  transform: translateY(1px);
}

/* =======================================================
   MOBILE
   ======================================================= */

@media (max-width: 768px) {
  .form-row {
    grid-template-columns: 1fr;
  }

  .wpcf7 form {
    padding: 1.3rem;
  }

  .wpcf7 .wpcf7-radio {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* =======================================================
   RECHNUNGS-E-MAIL BESONDERS HERVORHEBEN
   ======================================================= */

.wpcf7 input[name="email_rechnung"] {
  background: #F5E1E1;
  border: 2px solid #004b95
  ;
  box-shadow: 0 0 8px rgba(240, 180, 41, 0.25);
  font-weight: 600;
}

.wpcf7 input[name="email_rechnung"]:focus {
  border-color: #d98c00;
  box-shadow: 0 0 12px rgba(217, 140, 0, 0.35);
}/* End custom CSS */