
.legal-copy p { margin: 0 0 16px; }
.legal-copy h2,
.legal-copy h3,
.legal-copy h4 { margin: 28px 0 12px; }
.legal-copy ul,
.legal-copy ol { margin: 0 0 18px 1.25rem; padding: 0; }
.legal-copy li { margin: 0 0 8px; }
.legal-copy a { color: var(--accent); text-decoration: underline; }
.legal-copy strong { color: var(--steel); }
.legal-copy table { width: 100%; border-collapse: collapse; margin: 0 0 18px; }
.legal-copy td,
.legal-copy th { padding: 10px 12px; border: 1px solid var(--line); text-align: left; }
.legal-copy address { font-style: normal; line-height: 1.7; }

.quote .wpcf7 form,
.quote .wpcf7-form,
.homepage-form-shell .wpcf7 form,
.homepage-form-shell .wpcf7-form,
.contact-form-shell .wpcf7 form,
.contact-form-shell .wpcf7-form,
.request-form-box .wpcf7 form,
.request-form-box .wpcf7-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
  align-items: start;
  margin-top: var(--space-4);
}

.quote .wpcf7-form p,
.homepage-form-shell .wpcf7-form p,
.contact-form-shell .wpcf7-form p,
.request-form-box .wpcf7-form p,
.cf7-fallback p { margin: 0; }

.quote .wpcf7 label,
.homepage-form-shell .wpcf7 label,
.contact-form-shell .wpcf7 label,
.request-form-box .wpcf7 label {
  display: block;
  margin-bottom: var(--space-3);
  color: #fff;
  font-weight: 600;
}

.quote .wpcf7 input[type="text"],
.quote .wpcf7 input[type="email"],
.quote .wpcf7 input[type="tel"],
.quote .wpcf7 textarea,
.quote .wpcf7 select,
.quote-form input,
.quote-form textarea,
.quote-form select {
  width: 100%;
  padding: .875rem 1rem;
  color: #fff;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--radius-sm);
}

.quote .wpcf7 textarea,
.quote-form textarea {
  min-height: 7.5rem;
}

.quote .wpcf7 input::placeholder,
.quote .wpcf7 textarea::placeholder,
.quote-form input::placeholder,
.quote-form textarea::placeholder {
  color: rgba(255,255,255,.72);
}

.quote .wpcf7-form p:has(textarea),
.quote .wpcf7-form p:has(.wpcf7-textarea),
.quote .wpcf7-form p:has(input[type="submit"]),
.homepage-form-shell .wpcf7-form p:has(textarea),
.homepage-form-shell .wpcf7-form p:has(.wpcf7-textarea),
.homepage-form-shell .wpcf7-form p:has(input[type="submit"]),
.contact-form-shell .wpcf7-form p:has(textarea),
.contact-form-shell .wpcf7-form p:has(.wpcf7-textarea),
.contact-form-shell .wpcf7-form p:has(input[type="submit"]),
.request-form-box .wpcf7-form p:has(textarea),
.request-form-box .wpcf7-form p:has(.wpcf7-textarea),
.request-form-box .wpcf7-form p:has(input[type="submit"]),
.quote .wpcf7 .full,
.homepage-form-shell .wpcf7 .full,
.contact-form-shell .wpcf7 .full,
.request-form-box .wpcf7 .full,
.quote-form .full,
.quote .wpcf7-spinner,
.homepage-form-shell .wpcf7-spinner,
.contact-form-shell .wpcf7-spinner,
.request-form-box .wpcf7-spinner,
.quote .wpcf7 form .wpcf7-response-output,
.homepage-form-shell .wpcf7 form .wpcf7-response-output,
.contact-form-shell .wpcf7 form .wpcf7-response-output,
.request-form-box .wpcf7 form .wpcf7-response-output {
  grid-column: 1 / -1;
}

.quote .wpcf7 input[type="submit"],
.homepage-form-shell .wpcf7 input[type="submit"],
.contact-form-shell .wpcf7 input[type="submit"],
.request-form-box .wpcf7 input[type="submit"] {
  appearance: none;
  width: 100%;
  padding: 0 var(--button-padding-x); min-height: var(--button-height);
  color: #fff;
  background: var(--accent);
  border: 0;
  border-radius: var(--radius-sm);
  box-shadow: 0 16px 28px rgba(212,68,12,.24);
  cursor: pointer;
  font-weight: 800;
}

.quote .wpcf7 input[type="submit"]:hover,
.homepage-form-shell .wpcf7 input[type="submit"]:hover,
.contact-form-shell .wpcf7 input[type="submit"]:hover,
.request-form-box .wpcf7 input[type="submit"]:hover {
  background: #bf3d0b;
}

.quote .wpcf7 form .wpcf7-response-output,
.homepage-form-shell .wpcf7 form .wpcf7-response-output,
.contact-form-shell .wpcf7 form .wpcf7-response-output,
.request-form-box .wpcf7 form .wpcf7-response-output {
  margin: 1rem 0 0;
  padding: .9rem 1rem;
  border-radius: var(--radius-sm);
}

.quote .wpcf7-not-valid-tip,
.homepage-form-shell .wpcf7-not-valid-tip,
.contact-form-shell .wpcf7-not-valid-tip,
.request-form-box .wpcf7-not-valid-tip {
  margin-top: 8px;
  color: #ffd8c5;
  font-size: 14px;
}

.cf7-fallback p {
  color: #fff;
  margin-bottom: 16px;
}

@media (max-width: 782px) {
  .quote .wpcf7 form,
  .quote .wpcf7-form,
  .homepage-form-shell .wpcf7 form,
  .homepage-form-shell .wpcf7-form,
  .contact-form-shell .wpcf7 form,
  .contact-form-shell .wpcf7-form,
  .request-form-box .wpcf7 form,
  .request-form-box .wpcf7-form {
    grid-template-columns: 1fr;
  }
}


/* Preview-aligned request form on product/category pages */
.single-produkt .quote,
.tax-produktkategorie .quote {
  color: var(--text);
  background: linear-gradient(180deg,#ffffff,#f5f9fd);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: 0 14px 40px rgba(14,24,34,.08);
}

.single-produkt .quote h2,
.tax-produktkategorie .quote h2 {
  color: var(--steel);
  font-size: clamp(24px,3vw,34px);
  margin-bottom: 14px;
}

.single-produkt .quote p,
.tax-produktkategorie .quote p,
.single-produkt .quote .wpcf7 label,
.tax-produktkategorie .quote .wpcf7 label {
  color: #314456;
}

.single-produkt .quote .wpcf7 input[type="text"],
.single-produkt .quote .wpcf7 input[type="email"],
.single-produkt .quote .wpcf7 input[type="tel"],
.single-produkt .quote .wpcf7 textarea,
.single-produkt .quote .wpcf7 select,
.single-produkt .quote-form input,
.single-produkt .quote-form textarea,
.single-produkt .quote-form select,
.tax-produktkategorie .quote .wpcf7 input[type="text"],
.tax-produktkategorie .quote .wpcf7 input[type="email"],
.tax-produktkategorie .quote .wpcf7 input[type="tel"],
.tax-produktkategorie .quote .wpcf7 textarea,
.tax-produktkategorie .quote .wpcf7 select,
.tax-produktkategorie .quote-form input,
.tax-produktkategorie .quote-form textarea,
.tax-produktkategorie .quote-form select {
  color: var(--text);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
}

.single-produkt .quote .wpcf7 input::placeholder,
.single-produkt .quote .wpcf7 textarea::placeholder,
.single-produkt .quote-form input::placeholder,
.single-produkt .quote-form textarea::placeholder,
.tax-produktkategorie .quote .wpcf7 input::placeholder,
.tax-produktkategorie .quote .wpcf7 textarea::placeholder,
.tax-produktkategorie .quote-form input::placeholder,
.tax-produktkategorie .quote-form textarea::placeholder {
  color: #6c7a88;
}

.single-produkt .cf7-fallback p,
.tax-produktkategorie .cf7-fallback p {
  color: #314456;
}


/* Form button visibility and size refinement */
.quote .wpcf7 input[type="submit"],
.homepage-form-shell .wpcf7 input[type="submit"],
.contact-form-shell .wpcf7 input[type="submit"],
.request-form-box .wpcf7 input[type="submit"]{
  min-height:56px;
  font-size:15px;
  letter-spacing:.01em;
  border-radius:999px;
}


/* v1.1.51 calculator and request form refinement */
.request-form-box .quote-form,.single-produkt .quote .wpcf7 form,.tax-produktkategorie .quote .wpcf7 form{gap:1rem 1rem;}
.request-form-box input,.request-form-box textarea,.request-form-box select,.single-produkt .quote .wpcf7 input[type="text"],.single-produkt .quote .wpcf7 input[type="email"],.single-produkt .quote .wpcf7 input[type="tel"],.single-produkt .quote .wpcf7 textarea,.single-produkt .quote .wpcf7 select,.tax-produktkategorie .quote .wpcf7 input[type="text"],.tax-produktkategorie .quote .wpcf7 input[type="email"],.tax-produktkategorie .quote .wpcf7 input[type="tel"],.tax-produktkategorie .quote .wpcf7 textarea,.tax-produktkategorie .quote .wpcf7 select{min-height:56px;border-radius:18px;padding:.95rem 1rem;background:#fff;}
.request-form-box textarea,.single-produkt .quote .wpcf7 textarea,.tax-produktkategorie .quote .wpcf7 textarea{min-height:150px;}
.request-form-box button,.single-produkt .quote .wpcf7 input[type="submit"],.tax-produktkategorie .quote .wpcf7 input[type="submit"]{min-height:58px;font-size:15px;border-radius:999px;}
.preisrechner-tool-card{border-radius:28px;overflow:hidden;box-shadow:0 20px 48px rgba(16,29,43,.10);}
.preisrechner-tool-pad{padding:clamp(1.5rem,1.2rem + 1vw,2.25rem);}
.preisrechner-tool-pad > p:first-child{max-width:66ch;margin:0 0 1.25rem;color:var(--muted);font-size:1rem;}
.preisrechner-tool-embed{padding:clamp(1rem,1rem + .6vw,1.5rem);background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid var(--line);border-radius:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8);}
.page-preisrechner .page-hero .box,.page-template-page-preisrechner .page-hero .box{padding:clamp(1.4rem,1.1rem + .9vw,2rem);}
.page-preisrechner .page-hero h1,.page-template-page-preisrechner .page-hero h1{max-width:14ch;}
.page-preisrechner .card,.page-template-page-preisrechner .card{background:#fff;}
.page-preisrechner .wpcf7 form,.page-template-page-preisrechner .wpcf7 form,.preisrechner-tool-embed form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1rem;align-items:start;}
.page-preisrechner .wpcf7 form p,.page-template-page-preisrechner .wpcf7 form p,.preisrechner-tool-embed form p{margin:0;}
.page-preisrechner .wpcf7 input[type="text"],.page-preisrechner .wpcf7 input[type="email"],.page-preisrechner .wpcf7 input[type="tel"],.page-preisrechner .wpcf7 textarea,.page-preisrechner .wpcf7 select,.page-template-page-preisrechner .wpcf7 input[type="text"],.page-template-page-preisrechner .wpcf7 input[type="email"],.page-template-page-preisrechner .wpcf7 input[type="tel"],.page-template-page-preisrechner .wpcf7 textarea,.page-template-page-preisrechner .wpcf7 select,.preisrechner-tool-embed input,.preisrechner-tool-embed textarea,.preisrechner-tool-embed select{width:100%;min-height:56px;padding:.95rem 1rem;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--text);}
.page-preisrechner .wpcf7 textarea,.page-template-page-preisrechner .wpcf7 textarea,.preisrechner-tool-embed textarea{min-height:160px;}
.page-preisrechner .wpcf7 input[type="submit"],.page-template-page-preisrechner .wpcf7 input[type="submit"],.preisrechner-tool-embed input[type="submit"],.preisrechner-tool-embed button{width:100%;}
.page-preisrechner .wpcf7 form p:has(textarea),.page-preisrechner .wpcf7 form p:has(input[type="submit"]),.page-template-page-preisrechner .wpcf7 form p:has(textarea),.page-template-page-preisrechner .wpcf7 form p:has(input[type="submit"]),.preisrechner-tool-embed form p:has(textarea),.preisrechner-tool-embed form p:has(input[type="submit"]),.preisrechner-tool-embed form p:has(button){grid-column:1/-1;}
@media (max-width: 860px){.page-preisrechner .wpcf7 form,.page-template-page-preisrechner .wpcf7 form,.preisrechner-tool-embed form{grid-template-columns:1fr;}}
