/* Persentr approved form presentation — 2026-10-05. Scoped to explicit form roots. */
@import url('https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap');
.ps-unified-form {
  --ps-form-paper:#fffefb; --ps-form-ink:#252820; --ps-form-muted:#62665b;
  --ps-form-line:#d6d9ce; --ps-form-accent:#a9e34b;
  --ps-solar-ink:#252820; --ps-solar-muted:#62665b; --ps-solar-green:#414f2c;
  --ps-solar-accent:#5c791e; --ps-solar-sun:#a9e34b; --ps-solar-line:#d6d9ce;
  color-scheme:light;
  font-family:Onest,Arial,sans-serif!important;
  color:var(--ps-form-ink)!important;
  background:var(--ps-form-paper)!important;
  border-color:var(--ps-form-line)!important;
  border-radius:24px!important;
  box-sizing:border-box;
  padding:32px!important;
  min-width:0!important;
}
.ps-unified-form *, .ps-unified-form *::before, .ps-unified-form *::after { box-sizing:border-box; }
.ps-unified-form :where(input,select,textarea,button,label,p,legend,summary,small,span,a) { font-family:Onest,Arial,sans-serif!important; }
.ps-unified-form .ps-form-brand { display:block; grid-column:1 / -1; width:205px; max-width:calc(100% - 48px); height:auto; margin:0 0 30px; }
.ps-unified-form :where(h2,h3,h4,h5,.outage-h) { color:var(--ps-form-ink)!important; font:600 32px/1.16 Onest,Arial,sans-serif!important; letter-spacing:-.025em!important; margin:0 0 14px!important; }
.ps-unified-form :where(p,legend,label) { font-size:16px!important; line-height:1.5!important; }
.ps-unified-form label { font-weight:500!important; }
.ps-unified-form :where(p,small,.ou-hint-sub) { color:var(--ps-form-muted); }
.ps-unified-form :where(small,.ou-hint-sub,.ps-callback__alternative,.ps-callback__consent,.wpcf7-acceptance) { font-size:14px!important; line-height:1.5!important; }
.ps-unified-form :where(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]):not([aria-hidden=true]):not([tabindex="-1"]),select,textarea) {
  max-width:100%!important; width:100%; min-width:0!important;
  min-height:54px!important; padding:13px 15px!important; margin-top:8px;
  border:1px solid var(--ps-form-line)!important; border-radius:12px!important;
  background:#fff!important; color:var(--ps-form-ink)!important;
  font-size:17px!important; font-weight:400!important; line-height:1.4!important; box-shadow:none!important;
}
.ps-unified-form input::placeholder,.ps-unified-form textarea::placeholder { color:#797d72!important; opacity:1; }
.ps-unified-form :where(input,select,textarea,button,a,summary):focus-visible {
  outline:2px solid #414f2c!important; outline-offset:3px!important; box-shadow:none!important;
}
.ps-unified-form input[type=tel]:focus { border-color:#414f2c!important; box-shadow:none!important; }
.ps-unified-form :where(button,input[type=submit],.wpcf7-submit) {
  min-height:48px; max-width:100%; white-space:normal; font-size:16px!important;
  line-height:1.4!important; border-radius:12px!important; box-shadow:none!important;
}
.ps-unified-form :where(.ps-callback__submit,.primary-button,.ps-solar__primary-action,.ps-solar__button--primary,.wpcf7-submit,.ou-submit,[data-ps-intake-next],[data-visit-next],[data-ps-intake-submit],button[type=submit],input[type=submit]) {
  background:var(--ps-form-accent)!important; background-image:none!important;
  color:#243014!important; border:0!important; min-height:54px!important;
  padding:14px 16px!important; font-weight:600!important;
}
.ps-unified-form :where(.secondary-button,.button-secondary,.ps-solar__secondary-action,[data-ps-intake-back]) { background:#eff1e9!important; color:var(--ps-form-ink)!important; border-color:var(--ps-form-line)!important; }
.ps-unified-form button:disabled,.ps-unified-form input:disabled { opacity:.65; cursor:wait; }
.ps-unified-form input[type=checkbox],.ps-unified-form input[type=radio] { accent-color:#5c791e!important; }
.ps-unified-form .ps-callback__consent { display:flex; align-items:flex-start; gap:12px; margin:24px 0; color:#51564b!important; }
.ps-unified-form .ps-callback__consent input { width:20px!important; height:20px!important; flex:0 0 20px; margin:1px 0 0!important; }
.ps-unified-form .ps-callback__consent a { color:inherit!important; text-decoration:underline; text-underline-offset:3px; }
.ps-unified-form .ps-callback__summary { background:#f2f4ec!important; border:0!important; border-radius:12px!important; color:var(--ps-form-ink)!important; }
.ps-unified-form .ps-callback__summary:empty { display:none; }
.ps-unified-form .ps-callback__summary::before { font-size:14px!important; text-transform:none!important; letter-spacing:0!important; color:var(--ps-form-muted)!important; }
.ps-unified-form :where(.ps-callback__status,.wpcf7-response-output) { font-size:15px!important; line-height:1.5!important; border-radius:12px!important; overflow-wrap:anywhere; }
.ps-unified-form :where(.wpcf7-not-valid-tip,[aria-invalid=true]) { color:#973c2c!important; }
.ps-unified-form .wpcf7-acceptance input[type=checkbox] {
  display:inline-block!important; position:static!important; opacity:1!important;
  width:20px!important; height:20px!important; margin:1px 10px 0 0!important;
  clip:auto!important; clip-path:none!important; appearance:auto!important;
}
.ps-unified-form .wpcf7-acceptance .wpcf7-list-item { margin:0; }
.ps-unified-form .wpcf7-acceptance label { display:flex; align-items:flex-start; min-height:44px; font-size:14px!important; }
.ps-unified-form .wpcf7-acceptance .wpcf7-list-item-label::before,.ps-unified-form .wpcf7-acceptance .wpcf7-list-item-label::after { display:none!important; }
.ps-unified-form .ps-form-email-label { display:block; margin:0 0 8px; font-size:15px!important; font-weight:500; }
.ps-unified-form .form__check { display:block!important; margin:20px 0!important; padding:0!important; font-size:14px!important; line-height:1.5!important; }
.ps-unified-form .form__check a { display:inline!important; color:inherit!important; font-size:inherit!important; text-decoration:underline; }
.ps-unified-form .wpcf7-list-item-label { line-height:1.5!important; }
.ps-unified-form .pt-eyebrow { color:var(--ps-form-muted)!important; font-size:13px!important; letter-spacing:.04em!important; }
.ps-unified-form .pt-message { background:#f2f4ec!important; border-color:var(--ps-form-accent)!important; color:var(--ps-form-ink)!important; }
.ps-unified-form .pt-btn { border:1px solid var(--ps-form-line)!important; min-height:54px!important; border-radius:12px!important; background:#eff1e9!important; color:var(--ps-form-ink)!important; font-size:16px!important; }
.ps-unified-form [data-share-copy] { background:var(--ps-form-accent)!important; color:#243014!important; }
.ps-unified-form :where(.ou-checks label,.ou-radios label) { min-height:44px; font-size:16px!important; line-height:1.5!important; }
.ps-unified-form :where(.ou-radios,.ou-checks) { flex-wrap:wrap; }
.ps-unified-form :where(.ps-callback__close,.outage-close,.pt-close,.pt-dialog-close) { width:44px; height:44px; min-height:44px; color:var(--ps-form-ink)!important; background:#eff1e9!important; }
.ps-unified-form.ps-callback { width:min(512px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow:auto; }
.ps-unified-form.outage-modal { width:min(512px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; }
.ps-unified-form :where(.project-lead__progress,.project-wizard__steps,.visit-wizard__steps) { flex-wrap:wrap; }
.ps-unified-form :where(.project-lead__progress button,.project-wizard__steps button,.visit-wizard__steps button) { font-size:14px!important; }
.ps-unified-form .project-lead__intro strong { font-size:29px!important; line-height:1.2!important; }
@media(max-width:600px) {
  .ps-unified-form { padding:24px 20px!important; border-radius:20px!important; }
  .ps-unified-form :where(h2,h3,h4,h5,.outage-h) { font-size:29px!important; }
  .ps-unified-form.ps-callback { width:calc(100% - 16px); max-height:calc(100dvh - 16px); margin:auto auto 8px; }
  .ps-unified-form .ps-form-brand { margin-bottom:26px; }
}


/* Actual native step controls in the reserve and solar forms */
.ps-unified-form :where(.visit-route,.ps-solar__intake-progress) { flex-wrap:wrap; min-width:0; }
.ps-unified-form :where(.visit-route button,.ps-solar__intake-progress li) { min-width:0; font-size:14px!important; }
.ps-unified-form .ps-solar__intake-field > span { font-size:16px!important; color:var(--ps-form-ink)!important; }
.ps-unified-form .visit-step-panel { padding:0!important; border:0!important; background:none!important; box-shadow:none!important; }
.ps-unified-form .visit-location-field { padding:0!important; border:0!important; background:none!important; }
.ps-unified-form :where(.consent,.project-lead__consent,.ps-solar__intake-consent) { display:flex; gap:10px; align-items:flex-start; font-size:14px!important; }
.ps-unified-form :where(.consent,.project-lead__consent,.ps-solar__intake-consent) input[type=checkbox] { width:20px!important; height:20px!important; min-height:20px!important; flex:0 0 20px; margin:1px 0 0!important; }
.ps-unified-form :where(.consent,.project-lead__consent,.wpcf7-acceptance,.ps-solar__intake-consent) a { color:inherit!important; text-decoration:underline; }
.ps-unified-form :where(.ps-solar__intake-next,.ps-solar__intake-submit) { background:var(--ps-form-accent)!important; color:#243014!important; min-height:54px; }

.ps-unified-form input[type=file] { max-width:100%; font-family:Onest,Arial,sans-serif; font-size:14px; }
.ps-unified-form input[type=file]::file-selector-button { min-height:44px; padding:10px 12px; margin-right:8px; border:1px solid var(--ps-form-line); border-radius:10px; background:#eff1e9; color:var(--ps-form-ink); font:500 14px Onest,Arial,sans-serif; }
