/**
 * Gravity Forms styling — footer newsletter signup (form id 1).
 *
 * Scoped to #gform_wrapper_1 so the dark-on-dark treatment doesn't leak to
 * other GF forms (e.g. the future Request a Light Plan form, which sits on
 * light backgrounds). Mirrors mockups/_footer.js newsletter form:
 * transparent input, teal focus ring, teal->ember button, inline email+button
 * row on >=sm. Brand hexes per memory/reference_elementor_kit_colors.md.
 * Square corners per the PL no-radius rule.
 */

/* --- Inline layout: email field + Subscribe button on one row (>=sm) --- */
#gform_wrapper_1 form {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
#gform_wrapper_1 .gform_body { flex: 1 1 auto; }
#gform_wrapper_1 .gform_fields {
    display: block;
    grid-template-columns: none;
}
#gform_wrapper_1 .gfield { margin: 0; }
#gform_wrapper_1 .gfield_label { display: none; } /* placeholder carries the label */

/* Two fields (First name + Email) stack on mobile with the same 8px gap as
 * the form's field->button gap. */
#gform_wrapper_1 .gform_fields {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* >=640px: [First name][Email] on one row, full-width Subscribe below.
 * (A single 3-across row squeezes the email input to ~130px in the footer
 * column and clips its placeholder.) */
@media (min-width: 640px) {
    #gform_wrapper_1 .gform_fields { flex-direction: row; }
    #gform_wrapper_1 .gfield--type-text { flex: 0 0 40%; }
    #gform_wrapper_1 .gfield--type-email { flex: 1 1 auto; }
}

/* The wrapper's 24px bottom padding plus the consent line's 8px margin left a
 * 32px hole between Subscribe and the consent text. Zero the padding so the
 * gap is the same 8px rhythm as the field gaps. */
#gform_wrapper_1 { padding-bottom: 0 !important; } /* GF theme padding needs !important (same as popup block) */

/* CASL consent line appended below the Subscribe button (functions.php,
 * gform_get_form_filter_1). Muted on the dark footer; popup override below. */
.pl-nl-consent {
    margin: 8px 0 0;
    font-size: 12px;
    line-height: 1.5;
    color: rgba(245, 242, 234, 0.55);
}
#elementor-popup-modal-1388 .pl-nl-consent {
    color: rgba(26, 26, 26, 0.55);
}

/* --- Email input --- */
#gform_wrapper_1 input[type="email"],
#gform_wrapper_1 input[type="text"] {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.06) !important;
    color: #fbfaf6 !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 0 !important;
    padding: 12px 16px;
    font-size: 15px;
    line-height: 1.4;
}
#gform_wrapper_1 input[type="email"]::placeholder,
#gform_wrapper_1 input[type="text"]::placeholder { color: rgba(245, 242, 234, 0.5); }
#gform_wrapper_1 input[type="email"]:focus,
#gform_wrapper_1 input[type="text"]:focus {
    outline: none;
    border-color: #40A3A1 !important;
    box-shadow: 0 0 0 2px rgba(64, 163, 161, 0.3) !important;
}

/* --- Subscribe button --- */
#gform_wrapper_1 .gform_footer {
    margin: 0;
    padding: 0;
    display: flex;
}
#gform_wrapper_1 .gform_footer input[type="submit"],
#gform_wrapper_1 #gform_submit_button_1 {
    background-color: #40A3A1 !important;
    color: #ffffff !important;
    font-weight: 600;
    border: none !important;
    border-radius: 0 !important;
    padding: 12px 22px;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color 0.2s ease;
    width: 100%;
}
#gform_wrapper_1 .gform_footer input[type="submit"]:hover,
#gform_wrapper_1 #gform_submit_button_1:hover {
    background-color: #B85D2A !important;
}

/* --- Confirmation + validation, readable on the dark footer --- */
#gform_confirmation_wrapper_1 .gform_confirmation_message,
#gform_wrapper_1 .gform_confirmation_message {
    color: #fbfaf6;
    font-size: 15px;
}
#gform_wrapper_1 .gfield_required,
#gform_wrapper_1 .validation_message,
#gform_wrapper_1 .gform_validation_errors {
    color: #f0a868;
}
#gform_wrapper_1 .gfield_error input[type="email"],
#gform_wrapper_1 .gfield_error input[type="text"] {
    border-color: #f0a868 !important;
}

/* --- Newsletter form (id 1) inside the WHITE slide-in popup (template 1388) ---
 * Form 1 is also rendered inside the corner newsletter popup, where the
 * dark-footer treatment above is unreadable: the input text is near-white
 * (#fbfaf6) on white and the border is transparent-white. The narrower popup
 * also content-sizes the inline <form>, collapsing the email field so its
 * placeholder ("you@greenhouse.com") clips. These popup-scoped overrides give
 * the field the site's standard LIGHT treatment (mirrors form 3). Square
 * corners (radius 0) are inherited from the rules above; the dark footer
 * treatment is untouched.
 *
 * Layout: the inline email+button row is too cramped in the 380px popup (the
 * form content-sizes to ~264px and squeezes the email field to ~153px, clipping
 * the placeholder). Stack the field over a full-width Subscribe button instead
 * — bigger tap targets, no clipping. (The 2-ID popup scope beats the footer's
 * `@media (min-width:640px)` row rule on specificity, so no !important needed.) */
/* The GF wrapper carries 24px padding that insets the form ~24px from the
 * column edges (so the field/button don't line up with the text above) and
 * adds 24px to the gap above the field. Zero it: the field + button then span
 * the full column width, flush left/right with the heading and body copy. */
#elementor-popup-modal-1388 #gform_wrapper_1 { padding: 0 !important; }
#elementor-popup-modal-1388 #gform_wrapper_1 form {
    flex-direction: column;
    width: 100%;
}
#elementor-popup-modal-1388 #gform_wrapper_1 .gform_body,
#elementor-popup-modal-1388 #gform_wrapper_1 .gform_footer { width: 100%; }
/* The >=640px footer row rule is viewport-based, so it would also put
 * First name + Email side by side inside the ~380px popup. Keep them stacked. */
#elementor-popup-modal-1388 #gform_wrapper_1 .gform_fields { flex-direction: column; }
#elementor-popup-modal-1388 #gform_wrapper_1 .gfield--type-text { flex: 0 0 auto; }
#elementor-popup-modal-1388 #gform_wrapper_1 .gform_footer input[type="submit"],
#elementor-popup-modal-1388 #gform_wrapper_1 #gform_submit_button_1 { width: 100%; }
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="email"],
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="text"] {
    background-color: #fff !important;
    color: #1a1a1a !important;
    border: 1px solid #e5e5e3 !important;
}
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="email"]::placeholder,
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="text"]::placeholder {
    color: rgba(26, 26, 26, 0.45);
}
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="email"]:focus,
#elementor-popup-modal-1388 #gform_wrapper_1 input[type="text"]:focus {
    border-color: #40A3A1 !important;
    box-shadow: 0 0 0 3px rgba(64, 163, 161, 0.15) !important;
}

/* Close (X): replace the browser-default blue focus ring (#005FCC) with a
 * branded teal one. Keeps a visible focus indicator (accessibility); the
 * popup auto-focuses the close button on open, so this ring is user-visible. */
#elementor-popup-modal-1388 .dialog-close-button:focus,
#elementor-popup-modal-1388 .dialog-close-button:focus-visible {
    outline: 2px solid #40A3A1;
    outline-offset: 2px;
}


/**
 * Gravity Forms styling — glossary "Request a Term" form (form id 2).
 *
 * Scoped to #gform_wrapper_2. Mirrors mockups/glossary/index.html lines
 * 197-228: translucent card on the dark photo call-out, 2-col grid
 * (term + textarea full width, name + email half), dark inputs with teal
 * focus, teal->ember Submit, green confirmation box. Square corners.
 * Grid rules use !important to override GF's orbital-theme grid.
 */

/* --- Card --- */
#gform_wrapper_2 {
    max-width: 640px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.05);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 24px;
}
@media (min-width: 640px) {
    #gform_wrapper_2 { padding: 32px; }
}

/* --- 2-col grid: term + textarea + helper full; name/email half --- */
#gform_wrapper_2 .gform_fields {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
}
#gform_wrapper_2 #field_2_1,
#gform_wrapper_2 #field_2_2,
#gform_wrapper_2 #field_2_5 {
    grid-column: 1 / -1 !important;
}
#gform_wrapper_2 #field_2_3 { grid-column: 1 !important; }
#gform_wrapper_2 #field_2_4 { grid-column: 2 !important; }
#gform_wrapper_2 .gfield { margin: 0; }
@media (max-width: 639px) {
    #gform_wrapper_2 .gform_fields { grid-template-columns: 1fr !important; }
    #gform_wrapper_2 .gfield { grid-column: 1 / -1 !important; }
}

/* --- Labels --- */
#gform_wrapper_2 .gfield_label {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 12px;
    font-weight: 600;
    color: rgba(245, 242, 234, 0.6);
    margin: 0 0 8px;
}

/* --- Inputs + textarea --- */
#gform_wrapper_2 input[type="text"],
#gform_wrapper_2 input[type="email"],
#gform_wrapper_2 textarea {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #fbfaf6 !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 0 !important;
    padding: 12px 16px;
    font-size: 15px;
    line-height: 1.4;
}
#gform_wrapper_2 input::placeholder,
#gform_wrapper_2 textarea::placeholder { color: rgba(245, 242, 234, 0.4); }
#gform_wrapper_2 input:focus,
#gform_wrapper_2 textarea:focus {
    outline: none;
    border-color: #40A3A1 !important;
    box-shadow: 0 0 0 2px rgba(64, 163, 161, 0.3) !important;
}

/* --- Helper HTML field --- */
#gform_wrapper_2 .gfield_html {
    font-size: 12px;
    color: rgba(245, 242, 234, 0.5);
    align-self: center;
}

/* --- Submit button --- */
#gform_wrapper_2 .gform_footer {
    margin: 20px 0 0;
    padding: 0;
}
#gform_wrapper_2 .gform_footer input[type="submit"],
#gform_wrapper_2 #gform_submit_button_2 {
    background-color: #40A3A1 !important;
    color: #ffffff !important;
    font-weight: 600;
    border: none !important;
    border-radius: 0 !important;
    padding: 12px 24px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
#gform_wrapper_2 .gform_footer input[type="submit"]:hover,
#gform_wrapper_2 #gform_submit_button_2:hover {
    background-color: #B85D2A !important;
}

/* --- Confirmation + validation, on the dark call-out --- */
#gform_confirmation_wrapper_2 .gform_confirmation_message,
#gform_wrapper_2 .gform_confirmation_message {
    background: rgba(68, 154, 70, 0.15);
    border: 1px solid rgba(68, 154, 70, 0.4);
    color: #fbfaf6;
    padding: 16px 20px;
    font-size: 15px;
}
#gform_wrapper_2 .gfield_required,
#gform_wrapper_2 .validation_message,
#gform_wrapper_2 .gform_validation_errors {
    color: #f0a868;
}
#gform_wrapper_2 .gfield_error input,
#gform_wrapper_2 .gfield_error textarea {
    border-color: #f0a868 !important;
}


/**
 * Gravity Forms styling — Cultivation Guides email gate (form id 3).
 *
 * Scoped to #gform_wrapper_3. Lives inside the white #pl-cg-gate modal panel,
 * so styling is LIGHT (unlike the dark newsletter/glossary forms). Matches the
 * gate's original inline-form look: neutral borders, teal focus, teal->ember
 * submit, 2-col name/company. Radius 2px to match the existing modal chrome.
 * Grid rules use !important to override GF's orbital-theme grid.
 */
#gform_wrapper_3 .gform_fields {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 12px !important;
    margin-top: 20px;
}
#gform_wrapper_3 #field_3_1 { grid-column: 1 / -1 !important; }
#gform_wrapper_3 #field_3_2 { grid-column: 1 !important; }
#gform_wrapper_3 #field_3_3 { grid-column: 2 !important; }
#gform_wrapper_3 .gfield { margin: 0; }
@media (max-width: 540px) {
    #gform_wrapper_3 .gform_fields { grid-template-columns: 1fr !important; }
    #gform_wrapper_3 .gfield { grid-column: 1 / -1 !important; }
}
#gform_wrapper_3 .gfield_label {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .18em;
    color: #616160;
    margin: 0 0 4px;
}
#gform_wrapper_3 input[type="text"],
#gform_wrapper_3 input[type="email"] {
    width: 100%;
    padding: 10px 14px !important;
    border: 1px solid #e5e5e3 !important;
    border-radius: 2px !important;
    font-size: 14px;
    background: #fff !important;
    color: #1a1a1a !important;
    box-sizing: border-box;
}
#gform_wrapper_3 input:focus {
    outline: none;
    border-color: #40A3A1 !important;
    box-shadow: 0 0 0 3px rgba(64, 163, 161, 0.15) !important;
}
#gform_wrapper_3 .gform_footer {
    margin: 16px 0 0;
    padding: 0;
}
#gform_wrapper_3 .gform_footer input[type="submit"],
#gform_wrapper_3 #gform_submit_button_3 {
    width: 100%;
    background: #40A3A1 !important;
    color: #fff !important;
    font-weight: 600;
    border: 0 !important;
    border-radius: 2px !important;
    padding: 12px 20px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}
#gform_wrapper_3 .gform_footer input[type="submit"]:hover,
#gform_wrapper_3 #gform_submit_button_3:hover {
    background: #b85d2a !important;
}
#gform_wrapper_3 .gfield_required { color: #C42727; }
#gform_wrapper_3 .validation_message,
#gform_wrapper_3 .gform_validation_errors { color: #C42727; }
#gform_wrapper_3 .gfield_error input {
    border-color: #C42727 !important;
    background: rgba(196, 39, 39, 0.04) !important;
}

/* =========================================================
 * #gform_wrapper_5 — Request a Light Plan (multi-step, light card)
 * Embedded on page 25 inside .pl-lp-form-card. Teal submit -> ember hover,
 * square corners, Cabin. Step-number circles are an allowed semantic
 * indicator (form step indicator) per the square-corners rule. Built 2026-05-27.
 * ========================================================= */
#gform_wrapper_5 { font-family:Cabin,sans-serif; color:#1a1a1a; }
#gform_wrapper_5 .gform_title { display:none; }
#gform_wrapper_5 .gfield_label { font-family:Cabin,sans-serif; font-size:13px; font-weight:600; color:#1a1a1a; margin-bottom:6px; }
#gform_wrapper_5 .gfield_required { color:#C42727; }
#gform_wrapper_5 .gfield_description, #gform_wrapper_5 .ginput_container + .gfield_description { color:#616160; font-size:13px; margin-top:4px; }
#gform_wrapper_5 input[type="text"],
#gform_wrapper_5 input[type="email"],
#gform_wrapper_5 input[type="tel"],
#gform_wrapper_5 input[type="number"],
#gform_wrapper_5 select,
#gform_wrapper_5 textarea {
  width:100%; padding:.7em 1em; border:1px solid #e5e5e3 !important; border-radius:0 !important;
  background:#fff; color:#1a1a1a; font-family:inherit; font-size:16px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
#gform_wrapper_5 input::placeholder, #gform_wrapper_5 textarea::placeholder { color:#9a9a98; }
#gform_wrapper_5 input:focus, #gform_wrapper_5 select:focus, #gform_wrapper_5 textarea:focus {
  outline:none; border-color:#40A3A1 !important; box-shadow:0 0 0 3px rgba(64,163,161,.15);
}
#gform_wrapper_5 .gfield_radio .gchoice {
  display:flex; align-items:center; gap:10px; padding:12px 14px;
  border:1px solid #e5e5e3; background:#fff; margin-bottom:8px;
  transition:border-color .15s ease, background .15s ease;
}
#gform_wrapper_5 .gfield_radio .gchoice:hover { border-color:#40A3A1; }
#gform_wrapper_5 .gfield_radio input[type="radio"] { accent-color:#40A3A1; width:18px; height:18px; }
#gform_wrapper_5 .gfield_radio label { font-size:16px; color:#1a1a1a; cursor:pointer; }
#gform_wrapper_5 .gform_footer input[type="submit"],
#gform_wrapper_5 .gform_page_footer input[type="submit"],
#gform_wrapper_5 .gform_next_button,
#gform_wrapper_5 #gform_submit_button_5 {
  background:#40A3A1 !important; color:#fff !important; border:0 !important; border-radius:0 !important;
  font-family:Cabin,sans-serif; font-weight:600; font-size:15px;
  padding:14px 28px !important; cursor:pointer; transition:background .15s ease;
}
#gform_wrapper_5 .gform_footer input[type="submit"]:hover,
#gform_wrapper_5 .gform_page_footer input[type="submit"]:hover,
#gform_wrapper_5 .gform_next_button:hover,
#gform_wrapper_5 #gform_submit_button_5:hover { background:#B85D2A !important; }
#gform_wrapper_5 .gform_previous_button {
  background:#fff !important; color:#4a4a48 !important; border:1px solid #e5e5e3 !important; border-radius:0 !important;
  font-family:Cabin,sans-serif; font-weight:600; font-size:15px; padding:14px 24px !important;
  transition:border-color .15s ease;
}
#gform_wrapper_5 .gform_previous_button:hover { border-color:#1a1a1a !important; }
#gform_wrapper_5 .gf_progressbar_wrapper { margin-bottom:24px; }
#gform_wrapper_5 .gf_step_number { border-radius:9999px !important; border:2px solid #e5e5e3 !important; color:#9a9a98 !important; background:#fff !important; font-family:Cabin,sans-serif; }
#gform_wrapper_5 .gf_step_active .gf_step_number,
#gform_wrapper_5 .gf_step_completed .gf_step_number { background:#40A3A1 !important; border-color:#40A3A1 !important; color:#fff !important; }
#gform_wrapper_5 .gf_step_label { font-family:Cabin,sans-serif; font-size:13px; color:#616160; }
#gform_wrapper_5 .gf_step_active .gf_step_label { color:#1a1a1a; font-weight:600; }
#gform_wrapper_5 .gform_validation_errors { border-radius:0 !important; }
#gform_wrapper_5 .validation_message { color:#C42727; }
#gform_confirmation_wrapper_5 .gform_confirmation_message,
#gform_wrapper_5 .gform_confirmation_message {
  font-family:Cabin,sans-serif; font-size:16px; color:#1a1a1a;
  padding:24px; background:rgba(64,163,161,.08); border:1px solid #e5e5e3;
}

/* --- General Inquiry (form 4): 2-col grid; name/email + company/phone half, message full --- */
#gform_wrapper_4 .gform_fields {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
}
#gform_wrapper_4 #field_4_1 { grid-column: 1 !important; }
#gform_wrapper_4 #field_4_2 { grid-column: 1 !important; }
#gform_wrapper_4 #field_4_3 { grid-column: 2 !important; }
#gform_wrapper_4 #field_4_8 { grid-column: 2 !important; }
#gform_wrapper_4 #field_4_7 { grid-column: 1 / -1 !important; }
#gform_wrapper_4 .gfield { margin: 0; }
@media (max-width: 639px) {
    #gform_wrapper_4 .gform_fields { grid-template-columns: 1fr !important; }
    #gform_wrapper_4 .gfield { grid-column: 1 / -1 !important; }
}

/* Fix: GF default height:38px + line-height:38px clipped the selected text in selects/inputs (16px text in a ~15.6px content box). Let padding define the height. */
#gform_wrapper_5 input[type="text"],#gform_wrapper_5 input[type="email"],#gform_wrapper_5 input[type="tel"],#gform_wrapper_5 input[type="number"],#gform_wrapper_5 select,#gform_wrapper_5 textarea{height:auto !important;line-height:1.4 !important;}

/* Neutralize GF's default blue accent variable so no blue can surface anywhere in this form */
#gform_wrapper_5{--gf-color-primary:#40A3A1;}

/* Step indicator scheme: completed = brand green #449A46, current/active = teal #40A3A1, upcoming = gray. The completed badge/connector is a ::after pseudo (was GF blue #204ce5) - color it green too. Neutralize GF's blue var for active/other accents. */
#gform_wrapper_5{--gf-color-primary:#40A3A1 !important;}
#gform_wrapper_5 .gf_step_completed .gf_step_number{background:#449A46 !important;border-color:#449A46 !important;color:#fff !important;}
#gform_wrapper_5 .gf_step_completed .gf_step_number::after{background-color:#449A46 !important;border-color:#449A46 !important;}

/* Form text: align RLP form (id 5) to the Contact form + design guide - uppercase gray tracked labels, muted placeholder, matching required marker. Keeps Cabin. */
#gform_wrapper_5 .gfield_label{font-size:12px !important;font-weight:600 !important;text-transform:uppercase !important;letter-spacing:1.2px !important;color:#616160 !important;}
#gform_wrapper_5 input::placeholder,#gform_wrapper_5 textarea::placeholder{color:rgba(26,26,26,.45) !important;}
#gform_wrapper_5 .gfield_required{color:#C02B0A !important;}

/* --- Brand font across ALL GF forms (2026-06-09) ---------------------------
   Forms 1 (newsletter) and 4 (contact) never set font-family, so labels,
   inputs, and submit buttons fell back to the system font. Keep Cabin
   consistent with the styled forms (e.g. #gform_wrapper_5). */
.gform_wrapper { font-family: Cabin, sans-serif; }
.gform_wrapper input,
.gform_wrapper textarea,
.gform_wrapper select,
.gform_wrapper button { font-family: inherit; }

/* =========================================================
 * #gform_wrapper_6 — Light Energy Calculator (multi-step, mirrors form 5)
 * Embedded on page 1565 (/greenhouse-light-energy-calculator/). Teal submit -> ember hover,
 * square corners, Cabin. Step-number circles are an allowed semantic
 * indicator (form step indicator) per the square-corners rule. Built 2026-05-27.
 * ========================================================= */
#gform_wrapper_6 { font-family:Cabin,sans-serif; color:#1a1a1a; }
#gform_wrapper_6 .gform_title { display:none; }
#gform_wrapper_6 .gfield_label { font-family:Cabin,sans-serif; font-size:13px; font-weight:600; color:#1a1a1a; margin-bottom:6px; }
#gform_wrapper_6 .gfield_required { color:#C42727; }
#gform_wrapper_6 .gfield_description, #gform_wrapper_6 .ginput_container + .gfield_description { color:#616160; font-size:13px; margin-top:4px; }
#gform_wrapper_6 input[type="text"],
#gform_wrapper_6 input[type="email"],
#gform_wrapper_6 input[type="tel"],
#gform_wrapper_6 input[type="number"],
#gform_wrapper_6 select,
#gform_wrapper_6 textarea {
  width:100%; padding:.7em 1em; border:1px solid #e5e5e3 !important; border-radius:0 !important;
  background:#fff; color:#1a1a1a; font-family:inherit; font-size:16px;
  transition:border-color .15s ease, box-shadow .15s ease;
}
#gform_wrapper_6 input::placeholder, #gform_wrapper_6 textarea::placeholder { color:#9a9a98; }
#gform_wrapper_6 input:focus, #gform_wrapper_6 select:focus, #gform_wrapper_6 textarea:focus {
  outline:none; border-color:#40A3A1 !important; box-shadow:0 0 0 3px rgba(64,163,161,.15);
}
#gform_wrapper_6 .gfield_radio .gchoice {
  display:flex; align-items:center; gap:10px; padding:12px 14px;
  border:1px solid #e5e5e3; background:#fff; margin-bottom:8px;
  transition:border-color .15s ease, background .15s ease;
}
#gform_wrapper_6 .gfield_radio .gchoice:hover { border-color:#40A3A1; }
#gform_wrapper_6 .gfield_radio input[type="radio"] { accent-color:#40A3A1; width:18px; height:18px; }
#gform_wrapper_6 .gfield_radio label { font-size:16px; color:#1a1a1a; cursor:pointer; }
#gform_wrapper_6 .gform_footer input[type="submit"],
#gform_wrapper_6 .gform_page_footer input[type="submit"],
#gform_wrapper_6 .gform_next_button,
#gform_wrapper_6 #gform_submit_button_6 {
  background:#40A3A1 !important; color:#fff !important; border:0 !important; border-radius:0 !important;
  font-family:Cabin,sans-serif; font-weight:600; font-size:15px;
  padding:14px 28px !important; cursor:pointer; transition:background .15s ease;
}
#gform_wrapper_6 .gform_footer input[type="submit"]:hover,
#gform_wrapper_6 .gform_page_footer input[type="submit"]:hover,
#gform_wrapper_6 .gform_next_button:hover,
#gform_wrapper_6 #gform_submit_button_6:hover { background:#B85D2A !important; }
#gform_wrapper_6 .gform_previous_button {
  background:#fff !important; color:#4a4a48 !important; border:1px solid #e5e5e3 !important; border-radius:0 !important;
  font-family:Cabin,sans-serif; font-weight:600; font-size:15px; padding:14px 24px !important;
  transition:border-color .15s ease;
}
#gform_wrapper_6 .gform_previous_button:hover { border-color:#1a1a1a !important; }
#gform_wrapper_6 .gf_progressbar_wrapper { margin-bottom:24px; }
#gform_wrapper_6 .gf_step_number { border-radius:9999px !important; border:2px solid #e5e5e3 !important; color:#9a9a98 !important; background:#fff !important; font-family:Cabin,sans-serif; }
#gform_wrapper_6 .gf_step_active .gf_step_number,
#gform_wrapper_6 .gf_step_completed .gf_step_number { background:#40A3A1 !important; border-color:#40A3A1 !important; color:#fff !important; }
#gform_wrapper_6 .gf_step_label { font-family:Cabin,sans-serif; font-size:13px; color:#616160; }
#gform_wrapper_6 .gf_step_active .gf_step_label { color:#1a1a1a; font-weight:600; }
#gform_wrapper_6 .gform_validation_errors { border-radius:0 !important; }
#gform_wrapper_6 .validation_message { color:#C42727; }
#gform_confirmation_wrapper_6 .gform_confirmation_message,
#gform_wrapper_6 .gform_confirmation_message {
  font-family:Cabin,sans-serif; font-size:16px; color:#1a1a1a;
  padding:24px; background:rgba(64,163,161,.08); border:1px solid #e5e5e3;
}

#gform_wrapper_6 input[type="text"],#gform_wrapper_6 input[type="email"],#gform_wrapper_6 input[type="tel"],#gform_wrapper_6 input[type="number"],#gform_wrapper_6 select,#gform_wrapper_6 textarea{height:auto !important;line-height:1.4 !important;}

/* === Form 6 calculator-specific (after the mirrored base so these win) === */
#gform_wrapper_6 {
    max-width: 880px;
    margin: 0 auto;
    background: #ffffff;
    border: 1px solid #E5E5E3;
}
#gform_wrapper_6 input[type="submit"] { display: none !important; } /* live calculator, nothing to submit */
#gform_wrapper_6 .gfield.pl-calc-result input {
    background: #FBFAF6;
    border-color: #40A3A1;
    color: #1a1a1a;
    font-weight: 700;
    font-size: 18px;
}
#gform_wrapper_6 .gfield.pl-calc-result .gfield_label { color: #40A3A1; }
