.elementor-27 .elementor-element.elementor-element-3452cad{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-27 .elementor-element.elementor-element-3452cad:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-3452cad > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2D4332;}.elementor-27 .elementor-element.elementor-element-52b7be1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:104px;--padding-bottom:96px;--padding-left:24px;--padding-right:24px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-27 .elementor-element.elementor-element-0c7f89f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 18px) 0px;text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-27 .elementor-element.elementor-element-384ff15{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;text-align:start;}.elementor-27 .elementor-element.elementor-element-384ff15 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:54px;font-weight:600;line-height:1.05em;color:#F5EDE0;}.elementor-27 .elementor-element.elementor-element-abfd3ac{text-align:start;font-family:"Figtree", Sans-serif;font-size:18px;font-weight:400;line-height:1.65em;color:#F5EDE0D9;}.elementor-27 .elementor-element.elementor-element-88c310e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-27 .elementor-element.elementor-element-88c310e:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-88c310e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5EDE0;}.elementor-27 .elementor-element.elementor-element-86c004d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:104px;--padding-left:24px;--padding-right:24px;}.elementor-27 .elementor-element.elementor-element-1056095{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:48px 48px;--row-gap:48px;--column-gap:48px;--flex-wrap:nowrap;}.elementor-27 .elementor-element.elementor-element-2246f0b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-27 .elementor-element.elementor-element-09b92ab{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E5DDC9;--border-color:#E5DDC9;--border-radius:16px 16px 16px 16px;--padding-top:26px;--padding-bottom:28px;--padding-left:28px;--padding-right:28px;}.elementor-27 .elementor-element.elementor-element-09b92ab:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-09b92ab > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-27 .elementor-element.elementor-element-7e7abe5 .elementor-icon-wrapper{text-align:start;}.elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-stacked .elementor-icon{background-color:#E8DDC0;color:#2D4332;}.elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-default .elementor-icon{color:#E8DDC0;border-color:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-default .elementor-icon svg{fill:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-framed .elementor-icon{background-color:#2D4332;}.elementor-27 .elementor-element.elementor-element-7e7abe5.elementor-view-stacked .elementor-icon svg{fill:#2D4332;}.elementor-27 .elementor-element.elementor-element-7e7abe5 .elementor-icon{font-size:20px;padding:13px;border-radius:14px 14px 14px 14px;}.elementor-27 .elementor-element.elementor-element-7e7abe5 .elementor-icon svg{height:20px;}.elementor-27 .elementor-element.elementor-element-f425421{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-64b5d49{text-align:start;}.elementor-27 .elementor-element.elementor-element-64b5d49 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:18px;font-weight:600;line-height:1.25em;color:#1A1A1A;}.elementor-27 .elementor-element.elementor-element-8bb47b8{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-4516833{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E5DDC9;--border-color:#E5DDC9;--border-radius:16px 16px 16px 16px;--padding-top:26px;--padding-bottom:28px;--padding-left:28px;--padding-right:28px;}.elementor-27 .elementor-element.elementor-element-4516833:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-4516833 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-c92fd30 .elementor-icon-wrapper{text-align:start;}.elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-stacked .elementor-icon{background-color:#E8DDC0;color:#2D4332;}.elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-default .elementor-icon{color:#E8DDC0;border-color:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-default .elementor-icon svg{fill:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-framed .elementor-icon{background-color:#2D4332;}.elementor-27 .elementor-element.elementor-element-c92fd30.elementor-view-stacked .elementor-icon svg{fill:#2D4332;}.elementor-27 .elementor-element.elementor-element-c92fd30 .elementor-icon{font-size:20px;padding:13px;border-radius:14px 14px 14px 14px;}.elementor-27 .elementor-element.elementor-element-c92fd30 .elementor-icon svg{height:20px;}.elementor-27 .elementor-element.elementor-element-80cb12d{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-e6dbf95{text-align:start;}.elementor-27 .elementor-element.elementor-element-e6dbf95 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:18px;font-weight:600;line-height:1.25em;color:#1A1A1A;}.elementor-27 .elementor-element.elementor-element-7629df5{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-d9b0402{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E5DDC9;--border-color:#E5DDC9;--border-radius:16px 16px 16px 16px;--padding-top:26px;--padding-bottom:28px;--padding-left:28px;--padding-right:28px;}.elementor-27 .elementor-element.elementor-element-d9b0402:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-d9b0402 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-913b486 .elementor-icon-wrapper{text-align:start;}.elementor-27 .elementor-element.elementor-element-913b486.elementor-view-stacked .elementor-icon{background-color:#E8DDC0;color:#2D4332;}.elementor-27 .elementor-element.elementor-element-913b486.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-913b486.elementor-view-default .elementor-icon{color:#E8DDC0;border-color:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-913b486.elementor-view-framed .elementor-icon, .elementor-27 .elementor-element.elementor-element-913b486.elementor-view-default .elementor-icon svg{fill:#E8DDC0;}.elementor-27 .elementor-element.elementor-element-913b486.elementor-view-framed .elementor-icon{background-color:#2D4332;}.elementor-27 .elementor-element.elementor-element-913b486.elementor-view-stacked .elementor-icon svg{fill:#2D4332;}.elementor-27 .elementor-element.elementor-element-913b486 .elementor-icon{font-size:20px;padding:13px;border-radius:14px 14px 14px 14px;}.elementor-27 .elementor-element.elementor-element-913b486 .elementor-icon svg{height:20px;}.elementor-27 .elementor-element.elementor-element-70a3ff7{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-da65d70{text-align:start;}.elementor-27 .elementor-element.elementor-element-da65d70 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:18px;font-weight:600;line-height:1.25em;color:#1A1A1A;}.elementor-27 .elementor-element.elementor-element-54cbbf4{text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}.elementor-27 .elementor-element.elementor-element-718614d{text-align:center;font-family:"Figtree", Sans-serif;font-size:13px;font-weight:400;color:#6B6B6B;}.elementor-27 .elementor-element.elementor-element-aa118f1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-27 .elementor-element.elementor-element-452790c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E5DDC9;--border-color:#E5DDC9;--border-radius:20px 20px 20px 20px;--padding-top:44px;--padding-bottom:44px;--padding-left:44px;--padding-right:44px;}.elementor-27 .elementor-element.elementor-element-452790c:not(.elementor-motion-effects-element-type-background), .elementor-27 .elementor-element.elementor-element-452790c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-27 .elementor-element.elementor-element-6d32fc8{text-align:start;}.elementor-27 .elementor-element.elementor-element-6d32fc8 .elementor-heading-title{font-family:"Fraunces", Sans-serif;font-size:18px;font-weight:600;line-height:1.25em;color:#1A1A1A;}.elementor-27 .elementor-element.elementor-element-65dc0b3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 28px) 0px;text-align:start;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;color:#6B6B6B;}.elementor-27 .elementor-element.elementor-element-aeac4b4{--spacer-size:16px;}.elementor-27 .elementor-element.elementor-element-2ee3b2b{text-align:center;font-family:"Figtree", Sans-serif;font-size:16px;font-weight:400;line-height:1.65em;}@media(min-width:768px){.elementor-27 .elementor-element.elementor-element-52b7be1{--content-width:1200px;}.elementor-27 .elementor-element.elementor-element-1056095{--width:100%;}.elementor-27 .elementor-element.elementor-element-2246f0b{--width:40%;}.elementor-27 .elementor-element.elementor-element-09b92ab{--width:100%;}.elementor-27 .elementor-element.elementor-element-4516833{--width:100%;}.elementor-27 .elementor-element.elementor-element-d9b0402{--width:100%;}.elementor-27 .elementor-element.elementor-element-aa118f1{--width:58%;}.elementor-27 .elementor-element.elementor-element-452790c{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-27 .elementor-element.elementor-element-1056095{--width:100%;}.elementor-27 .elementor-element.elementor-element-2246f0b{--width:100%;}.elementor-27 .elementor-element.elementor-element-09b92ab{--width:100%;}.elementor-27 .elementor-element.elementor-element-4516833{--width:100%;}.elementor-27 .elementor-element.elementor-element-d9b0402{--width:100%;}.elementor-27 .elementor-element.elementor-element-aa118f1{--width:100%;}.elementor-27 .elementor-element.elementor-element-452790c{--width:100%;}}@media(max-width:1024px){.elementor-27 .elementor-element.elementor-element-86c004d{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-27 .elementor-element.elementor-element-1056095{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-27 .elementor-element.elementor-element-52b7be1{--padding-top:20px;--padding-bottom:20px;--padding-left:22px;--padding-right:22px;}.elementor-27 .elementor-element.elementor-element-384ff15 .elementor-heading-title{font-size:1.6em;}.elementor-27 .elementor-element.elementor-element-86c004d{--padding-top:15px;--padding-bottom:15px;--padding-left:10px;--padding-right:10px;}.elementor-27 .elementor-element.elementor-element-1056095{--width:100%;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-27 .elementor-element.elementor-element-2246f0b{--width:100%;}.elementor-27 .elementor-element.elementor-element-09b92ab{--width:100%;}.elementor-27 .elementor-element.elementor-element-64b5d49 .elementor-heading-title{font-size:1em;}.elementor-27 .elementor-element.elementor-element-4516833{--width:100%;}.elementor-27 .elementor-element.elementor-element-e6dbf95 .elementor-heading-title{font-size:1em;}.elementor-27 .elementor-element.elementor-element-d9b0402{--width:100%;}.elementor-27 .elementor-element.elementor-element-da65d70 .elementor-heading-title{font-size:1em;}.elementor-27 .elementor-element.elementor-element-aa118f1{--width:100%;}.elementor-27 .elementor-element.elementor-element-452790c{--width:100%;--padding-top:30px;--padding-bottom:30px;--padding-left:24px;--padding-right:24px;}.elementor-27 .elementor-element.elementor-element-6d32fc8 .elementor-heading-title{font-size:1em;}.elementor-27 .elementor-element.elementor-element-65dc0b3{margin:10px 0px calc(var(--kit-widget-spacing, 0px) + 28px) 0px;font-size:14px;}.elementor-27 .elementor-element.elementor-element-2ee3b2b{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;line-height:1.2em;}}/* Start custom CSS *//* =================================================================
   Gravity Forms — Portland Remodel Realtor  (SCOPED to .pdx-form)
   -----------------------------------------------------------------
   These styles ONLY apply to a form/container carrying the CSS class
   "pdx-form". They will not touch any other Gravity Form on the site.

   HOW THE CLASS GETS THERE (pick one):
   1. (recommended) It is already baked into the updated contact-page
      manifest — the Elementor container around the form carries
      "pdx-form". Re-import that manifest and you're done.
   2. Or add it by hand in Elementor: edit the white form-card
      container → Advanced tab → CSS Classes → type  pdx-form

   WHERE TO PASTE THIS CSS: Appearance → Customize → Additional CSS.
   Fonts (Fraunces, Figtree) are already loaded site-wide.

   To reuse this styling on another form later, just add the same
   "pdx-form" class to that form's Elementor container.
   ================================================================= */

:root {
  --pdx-forest:     #2D4332;
  --pdx-forest-dp:  #1F3024;
  --pdx-cream:      #F5EDE0;
  --pdx-cream-soft: #FAF4E8;
  --pdx-sand:       #E8DDC0;
  --pdx-border:     #E5DDC9;
  --pdx-text:       #1A1A1A;
  --pdx-gray:       #6B6B6B;
  --pdx-error:      #B0543B;
  --pdx-ui:      'Figtree', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --pdx-display: 'Fraunces', Georgia, 'Times New Roman', serif;
}

/* ---- Wrapper + field rhythm ---- */
.pdx-contact-form .gform_wrapper { font-family: var(--pdx-ui); }
.pdx-contact-form .gform_wrapper .gform_fields { grid-row-gap: 20px; }

/* ---- GF title / description (hidden via shortcode, styled for safety) ---- */
.pdx-contact-form .gform_wrapper .gform_title       { font-family: var(--pdx-display); color: var(--pdx-text); }
.pdx-contact-form .gform_wrapper .gform_description  { font-family: var(--pdx-ui); color: var(--pdx-gray); }

/* ---- Labels: small, uppercase, letter-spaced, gray ---- */
.pdx-contact-form .gform_wrapper .gfield_label,
.pdx-contact-form .gform_wrapper legend.gfield_label {
  font-family: var(--pdx-ui) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--pdx-gray) !important;
  margin-bottom: 8px !important;
  line-height: 1.4 !important;
}

/* ---- Required marker: muted, not loud red ---- */
.pdx-contact-form .gform_wrapper .gfield_required,
.pdx-contact-form .gform_wrapper .gfield_required .gfield_required_text,
.pdx-contact-form .gform_wrapper .gfield_required_asterisk {
  color: var(--pdx-gray) !important;
  font-weight: 600 !important;
  font-size: 10px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

/* ---- Inputs / textarea / select ---- */
.pdx-contact-form .gform_wrapper .gfield input[type=text],
.pdx-contact-form .gform_wrapper .gfield input[type=email],
.pdx-contact-form .gform_wrapper .gfield input[type=tel],
.pdx-contact-form .gform_wrapper .gfield input[type=url],
.pdx-contact-form .gform_wrapper .gfield input[type=number],
.pdx-contact-form .gform_wrapper .gfield textarea,
.pdx-contact-form .gform_wrapper .gfield select {
  width: 100% !important;
  font-family: var(--pdx-ui) !important;
  font-size: 15px !important;
  color: var(--pdx-text) !important;
  background-color: var(--pdx-cream-soft) !important;
  border: 1px solid var(--pdx-border) !important;
  border-radius: 10px !important;
  padding: 13px 16px !important;
  box-shadow: none !important;
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.pdx-contact-form .gform_wrapper .gfield textarea {
  padding: 14px 16px !important;
  line-height: 1.6 !important;
  min-height: 150px;
}

/* Placeholders */
.pdx-contact-form .gform_wrapper .gfield input::placeholder,
.pdx-contact-form .gform_wrapper .gfield textarea::placeholder {
  color: #9A9A9A !important;
  opacity: 1;
}

/* Focus state — forest border + soft ring */
.pdx-contact-form .gform_wrapper .gfield input:focus,
.pdx-contact-form .gform_wrapper .gfield textarea:focus,
.pdx-contact-form .gform_wrapper .gfield select:focus {
  outline: none !important;
  border-color: var(--pdx-forest) !important;
  background-color: #FFFFFF !important;
  box-shadow: 0 0 0 3px rgba(45, 67, 50, 0.12) !important;
}

/* Custom select caret (forest chevron) */
.pdx-contact-form .gform_wrapper .gfield select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%232D4332' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 42px !important;
}

/* ---- Character counter ("0 of 600 max characters") ---- */
.pdx-contact-form .gform_wrapper .ginput_counter,
.pdx-contact-form .gform_wrapper .charleft,
.pdx-contact-form .gform_wrapper .gfield_description {
  font-family: var(--pdx-ui) !important;
  font-size: 12px !important;
  color: var(--pdx-gray) !important;
  margin-top: 8px !important;
}

/* ---- Submit button: forest pill, cream text ---- */
.pdx-contact-form .gform_wrapper .gform_footer { margin-top: 10px !important; padding: 0 !important; }
.pdx-contact-form .gform_wrapper .gform_footer input[type=submit],
.pdx-contact-form .gform_wrapper .gform_footer button,
.pdx-contact-form .gform_wrapper .gform_footer .gform_button,
.pdx-contact-form .gform_wrapper button.gform_button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  font-family: var(--pdx-ui) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: .01em !important;
  color: var(--pdx-cream) !important;
  background: var(--pdx-forest) !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 15px 34px !important;
  width: auto !important;
  cursor: pointer;
  transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.pdx-contact-form .gform_wrapper .gform_footer input[type=submit]:hover,
.pdx-contact-form .gform_wrapper .gform_footer button:hover,
.pdx-contact-form .gform_wrapper .gform_footer .gform_button:hover {
  background: var(--pdx-forest-dp) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(31, 48, 36, 0.18);
}
/* Want a full-width button instead? uncomment:
.pdx-contact-form .gform_wrapper .gform_footer input[type=submit],
.pdx-contact-form .gform_wrapper .gform_footer button { width: 100% !important; }
*/

/* ---- Validation: error states ---- */
.pdx-contact-form .gform_wrapper .gfield_error input,
.pdx-contact-form .gform_wrapper .gfield_error textarea,
.pdx-contact-form .gform_wrapper .gfield_error select {
  border-color: var(--pdx-error) !important;
  background-color: #FBF3F0 !important;
}
.pdx-contact-form .gform_wrapper .gfield_validation_message,
.pdx-contact-form .gform_wrapper .validation_message {
  font-family: var(--pdx-ui) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--pdx-error) !important;
  background: none !important;
  border: none !important;
  padding: 6px 0 0 !important;
}
.pdx-contact-form .gform_wrapper .gform_validation_errors {
  font-family: var(--pdx-ui) !important;
  border: 1px solid #E6C9BF !important;
  background: #FBF3F0 !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
.pdx-contact-form .gform_wrapper .gform_validation_errors .gform_submission_error {
  font-family: var(--pdx-display) !important;
  color: var(--pdx-error) !important;
}

/* ---- Confirmation message after submit ---- */
.pdx-contact-form .gform_confirmation_message,
.pdx-contact-form .gform_wrapper .gform_confirmation_message {
  font-family: var(--pdx-ui) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: var(--pdx-forest) !important;
  background: var(--pdx-cream-soft) !important;
  border: 1px solid var(--pdx-border) !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
}

/* ---- Multi-part fields (first/last name, etc.) spacing ---- */
.pdx-contact-form .gform_wrapper .ginput_complex { gap: 16px; }
.pdx-contact-form .gform_wrapper .ginput_complex span { margin: 0 !important; }/* End custom CSS */