/* Shared LP additions: WordPress context, short footer, Gravity Forms styled to match the drafts.
   Loads after the page stylesheet. Scoped to .wwwlp so nothing leaks to the rest of the site. */

.wwwlp.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .wwwlp.admin-bar .site-header { top: 46px; } }

.wwwlp .footer-contact { font-style: normal; display: flex; flex-wrap: wrap; gap: 4px 24px; color: var(--white); }
.wwwlp .footer-contact a { color: var(--white); }

.wwwlp .thank-you h1 { max-width: 18ch; font-size: clamp(36px, 5vw, 64px); }
.wwwlp .lp-form-missing { margin: 0; padding: 16px; border: 2px dashed var(--black); border-radius: 12px; }

/* ---- Gravity Forms (2.5+ markup) ---- */
.wwwlp .lp-form .gform_wrapper,
.wwwlp .lp-form .gform_wrapper.gravity-theme { margin: 0; }
.wwwlp .lp-form .gform_fields { display: grid; gap: 16px; grid-template-columns: 1fr; }
.wwwlp .lp-form .gfield { margin: 0; padding: 0; min-width: 0; }
.wwwlp .lp-form .gfield--width-half { grid-column: auto; }
@media (min-width: 560px) {
  .wwwlp .lp-form .gform_fields { grid-template-columns: 1fr 1fr; }
  .wwwlp .lp-form .gfield { grid-column: 1 / -1; }
  .wwwlp .lp-form .gfield--width-half { grid-column: span 1; }
}
.wwwlp .lp-form .gfield_label,
.wwwlp .lp-form .gform-field-label { display: block; margin: 0 0 6px; font-family: var(--font); font-weight: 700; font-size: 15px; line-height: 20px; color: inherit; }
.wwwlp .lp-form .gfield_required { color: inherit; margin-left: 4px; font-weight: 400; }
.wwwlp .lp-form .gfield_required .gfield_required_text { font-size: 13px; }
.wwwlp .lp-form input[type="text"],
.wwwlp .lp-form input[type="email"],
.wwwlp .lp-form input[type="url"],
.wwwlp .lp-form input[type="tel"],
.wwwlp .lp-form select,
.wwwlp .lp-form textarea {
  width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box;
  font: inherit; font-size: 16px; color: var(--black); background: var(--white);
  min-height: 48px; padding: 10px 14px; border: 1.5px solid var(--black); border-radius: 12px;
}
.wwwlp .lp-form textarea { min-height: 120px; resize: vertical; }
.wwwlp .lp-form input:focus, .wwwlp .lp-form select:focus, .wwwlp .lp-form textarea:focus {
  border-color: var(--blue); outline: 3px solid rgba(10, 108, 255, .3); outline-offset: 0;
}
.wwwlp .lp-form .gfield_description { margin-top: 6px; font-size: 14px; line-height: 18px; color: inherit; }
.wwwlp .lp-form .gform_footer { margin: 16px 0 0; padding: 0; }
.wwwlp .lp-form .gform_ajax_spinner { margin-left: 12px; }

/* Errors: clear text plus a thick border, never colour alone */
.wwwlp .lp-form .gform_validation_errors { margin: 0 0 16px; padding: 12px 14px; border: 2px solid currentColor; border-radius: 12px; background: transparent; box-shadow: none; }
.wwwlp .lp-form .gform_validation_errors h2 { font-size: 16px; line-height: 22px; margin: 0; color: inherit; }
.wwwlp .lp-form .gfield_error input, .wwwlp .lp-form .gfield_error select, .wwwlp .lp-form .gfield_error textarea { border-width: 3px; }
.wwwlp .lp-form .validation_message { margin-top: 6px; padding: 0; background: none; border: 0; font-size: 14px; font-weight: 700; color: inherit; }

/* Both pages: white card on the blue section */
.wwwlp .quote-section .lp-form { background: var(--white); color: var(--black); padding: 28px; border-radius: var(--radius); }


/* Gravity Forms confirmation (only shows if the redirect is ever switched off) */
.wwwlp .lp-form .gform_confirmation_message { font-weight: 700; }

/* Hidden tracking fields and the honeypot take no space */
.wwwlp .lp-form .gform_hidden, .wwwlp .lp-form .gfield--type-hidden,
.wwwlp .lp-form .gfield_visibility_hidden, .wwwlp .lp-form .gform_validation_container { display: none !important; }
