.ps-quote-form { padding: clamp(1.4rem,4vw,3rem); border: 1px solid #dfd8ce; border-radius: 18px; background: #fff; box-shadow: 0 18px 50px rgba(11,29,51,.08); }
.ps-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; }
.ps-form-grid label, .ps-consent { display: grid; gap: .45rem; color: #0b1d33; font-weight: 700; }
.ps-form-grid label span { color: #b8734a; }
.ps-form-grid input, .ps-form-grid select, .ps-form-grid textarea { width: 100%; padding: .9rem 1rem; border: 1px solid #cfc8be; border-radius: 4px; background: #fff; color: #17202b; font: inherit; }
.ps-form-grid input:focus, .ps-form-grid select:focus, .ps-form-grid textarea:focus { outline: 3px solid rgba(184,115,74,.2); border-color: #b8734a; }
.ps-form-grid__wide { grid-column: 1/-1; }
.ps-consent { display: flex; grid-template-columns: auto 1fr; align-items: start; margin: 1.5rem 0; font-weight: 500; }
.ps-consent input { margin-top: .35rem; }
.ps-form-submit { min-height: 52px; padding: .85rem 1.35rem; border: 1px solid #b8734a; border-radius: 2px; background: #b8734a; color: #fff; font: 750 1rem/1.2 inherit; cursor: pointer; }
.ps-form-submit:hover { background: #955837; }
.ps-form-message { margin-bottom: 1.2rem; padding: 1rem 1.2rem; border-radius: 4px; }
.ps-form-message--success { border: 1px solid #7da98d; background: #edf7f0; color: #21492f; }
.ps-form-message--error { border: 1px solid #c98181; background: #fff0f0; color: #6b2020; }
.ps-honeypot { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 700px) { .ps-form-grid { grid-template-columns: 1fr; } .ps-form-grid__wide { grid-column: auto; } }
