.ps-form{font-family:var(--font-sans);font-size:14px;color:var(--charcoal);min-width:0}.ps-form p{font-size:13px;line-height:1.7}.ps-form-note{margin-bottom:20px}.ps-delivery-note{padding:12px 15px;background:var(--stone);border-left:2px solid var(--red);font-size:12px;line-height:1.65;margin-bottom:25px}.ps-delivery-note.is-draft{background:#fff;border:1px solid var(--border);border-left:2px solid var(--red)}.ps-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px}.ps-field{display:flex;flex-direction:column;min-width:0;margin-bottom:23px}.ps-field-grid .ps-field{margin-bottom:0}.ps-field-grid{margin-bottom:28px}.ps-field label,.ps-form legend{display:block;font-size:13px;font-weight:650;line-height:1.5;margin-bottom:9px;color:var(--charcoal)}.ps-optional{font-size:10px;font-weight:400;color:var(--muted);margin-left:7px}.ps-field input,.ps-field textarea{width:100%;min-width:0;border:1px solid #bcbcb9;background:var(--white);border-radius:0;color:var(--charcoal);padding:13px 14px;min-height:49px;font-size:16px;line-height:1.5;transition:border-color .2s,box-shadow .2s}.ps-field textarea{resize:vertical;min-height:100px}.ps-field textarea::placeholder{color:#6b6b6b;font-size:13px}.ps-field input:focus,.ps-field textarea:focus{outline:none;border-color:var(--red);box-shadow:0 0 0 2px #c8020020}.ps-field input[aria-invalid=true],.ps-field textarea[aria-invalid=true]{border-color:var(--red)}.ps-field-error{color:var(--red)!important;margin-top:7px!important;font-size:12px!important}.ps-form fieldset{padding:0;border:0;min-width:0;margin:0 0 27px}.ps-service-options>div{display:flex;flex-wrap:wrap;gap:8px}.ps-service-options label{display:flex;align-items:center;gap:7px;position:relative;border:1px solid var(--border);padding:10px 12px;background:var(--white);cursor:pointer;font-size:11px;line-height:1.5;transition:border-color .2s,color .2s;min-height:41px}.ps-service-options label.selected{border-color:var(--red);color:var(--red)}.ps-service-options input,.ps-contact-preference input{width:15px;height:15px;accent-color:var(--red);flex-shrink:0;margin:0}.ps-service-options label:focus-within,.ps-contact-preference label:focus-within{outline:2px solid var(--red);outline-offset:3px}.ps-service-options input:focus-visible,.ps-contact-preference input:focus-visible{outline:none}.ps-contact-preference>div{display:flex;flex-wrap:wrap;gap:20px}.ps-contact-preference label{display:flex;align-items:center;gap:8px;font-size:12px;min-height:32px;cursor:pointer}.ps-selected-project{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;background:var(--stone);font-size:12px;margin:0 0 25px}.ps-selected-project button{width:35px;height:35px;font-size:22px;background:transparent}.ps-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.ps-form-privacy{font-size:11px!important;margin-bottom:20px}.ps-form-privacy a{text-decoration:underline;text-underline-offset:3px;color:var(--charcoal)}.ps-form-submit{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;min-height:59px;border:1px solid var(--red);border-radius:0;background:var(--red);color:white;font-size:14px;font-weight:650;transition:background .2s,transform .2s}.ps-form-submit:hover:not(:disabled){background:var(--red-hover)}.ps-form-submit:active:not(:disabled){transform:translateY(1px)}.ps-form-submit:disabled{cursor:default;background:#696969;border-color:#696969}.ps-form-submit span{font-size:20px;line-height:1}.ps-form-reassurance{text-align:center;font-size:11px!important;margin-top:11px}.ps-form-alert,.ps-form-accepted{padding:16px 18px;margin-bottom:23px;border:1px solid var(--red);background:var(--white);font-size:13px}.ps-form-alert{color:var(--red)}.ps-form-accepted h3{font-size:20px;margin-bottom:10px}.ps-form-reference{overflow-wrap:anywhere;font-size:11px!important}.ps-email-draft{border-top:1px solid var(--border);padding-top:27px;margin-top:28px}.ps-email-draft h3{font-size:21px;line-height:1.3;margin-bottom:10px}.ps-email-draft textarea{width:100%;font-family:inherit;font-size:13px;line-height:1.6;margin-top:20px;padding:15px;border:1px solid var(--border);background:var(--white);color:var(--charcoal);resize:vertical}.ps-email-draft>div{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:17px}.ps-email-draft>div>a{padding:12px 15px;color:white;background:var(--red);font-size:12px;font-weight:650}.ps-email-draft>div>button{padding:12px 15px;background:var(--stone);border:1px solid var(--border);font-size:12px}.ps-email-draft>p:last-child{margin-top:12px;font-size:11px;overflow-wrap:anywhere}.ps-form-compact .ps-service-options label{padding:8px 10px}
@media(max-width:600px){.ps-field-grid{grid-template-columns:1fr;gap:19px}.ps-form p{font-size:14px}.ps-field label,.ps-form legend{font-size:14px}.ps-optional{font-size:11px}.ps-service-options label{font-size:12px;min-height:44px}.ps-contact-preference label{font-size:13px;min-height:44px}.ps-form-submit{font-size:14px}.ps-delivery-note{font-size:13px}.ps-form-privacy{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.ps-form *{transition:none!important}}

/* Direct quantities for windows and doors, simple checks for other services. */
.ps-service-options>div.ps-quantity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.ps-quantity-item{min-width:0}
.ps-service-options label.ps-quantity-entry,.ps-form-compact .ps-service-options label.ps-quantity-entry{display:flex;justify-content:space-between;gap:8px;padding:5px 8px 5px 12px;min-height:56px;font-size:13px;line-height:1.4;cursor:text;background:var(--stone)}
.ps-quantity-entry>span{min-width:0}
.ps-service-options .ps-quantity-entry input{width:58px;height:44px;min-height:44px;padding:8px 4px;border:1px solid #bcbcb9;border-radius:0;background:var(--white);color:var(--charcoal);font-size:16px;line-height:1;text-align:center;flex-shrink:0}
.ps-service-options .ps-quantity-entry input::placeholder{color:var(--muted);opacity:1}
.ps-service-options .ps-quantity-entry input:disabled{opacity:.55;cursor:default}
.ps-service-options .ps-quantity-entry input[aria-invalid=true]{border-color:var(--red)}
.ps-service-options>div.ps-service-checks{display:flex;flex-wrap:wrap;gap:6px}
.ps-service-options .ps-service-checks label,.ps-form-compact .ps-service-options .ps-service-checks label{padding:9px 11px;min-height:44px;font-size:12px}
.ps-quantity-help{margin:0 0 12px!important;color:var(--muted);font-size:12px!important}
@media(max-width:420px){.ps-service-options label.ps-quantity-entry,.ps-form-compact .ps-service-options label.ps-quantity-entry{padding:5px 6px 5px 8px;font-size:12px;gap:5px}.ps-service-options .ps-quantity-entry input{width:48px}}
