.quotation-page .quotation-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.quotation-layout > * { min-width: 0; }
.quotation-next { padding: 1.25rem; margin-block: 1.5rem; background: #fff8fa; border: 1px solid #f2d7e2; border-radius: 16px; }
.quotation-next ol { padding-left: 1.25rem; }
.quotation-next li { margin-block: 1rem; }
.quotation-next p { font-size: .95rem; color: var(--muted); }
.quotation-page .contact-panel { padding: clamp(1rem, 3vw, 2rem); border-radius: 16px; }
.quotation-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1rem; }
.quotation-field { min-width: 0; }
.quotation-page .contact-panel .quotation-field label { margin-top: .95rem; }
.quotation-page .contact-panel input:not([hidden]),
.quotation-page .contact-panel select,
.quotation-page .contact-panel textarea { width: 100%; min-width: 0; box-sizing: border-box; font-size: 1rem; }
.quotation-privacy { font-size: .875rem; color: var(--muted); line-height: 1.6; margin-block: 1rem; }
.quotation-page .form-actions { display: flex; flex-wrap: wrap; gap: .75rem; }
.quotation-page .form-actions .button { white-space: normal; text-align: center; }
.quotation-page #quotation-form,
.quotation-page #quotation-products { scroll-margin-top: 100px; }
.quotation-page .product-card { display: flex; flex-direction: column; min-width: 0; }
.quotation-page .product-card .text-link { margin-top: auto; }
@media (max-width: 800px) {
  .quotation-page .quotation-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 540px) {
  .quotation-fields { grid-template-columns: minmax(0, 1fr); }
  .quotation-page .form-actions .button { width: 100%; }
}
