/* FurlifeVets Promotions shared form design system */
:root {
  --flv-green: #1e4732;
  --flv-green-dark: #18201c;
  --flv-caramel: #d89b63;
  --flv-cream: #fff4cc;
  --flv-soft: #f2f6f3;
  --flv-border: #cbd2cd;
  --flv-card-border: #e2e6e3;
  --flv-error-bg: #fff0f0;
  --flv-error-border: #d98b8b;
  --flv-radius: 8px;
  --flv-card-radius: 18px;
}

.flp,.fld{max-width:760px;margin:35px auto;color:var(--flv-green-dark);font-family:inherit}
.flp-card,.fld-card{background:#fff;border:1px solid var(--flv-card-border);border-radius:var(--flv-card-radius);padding:clamp(24px,5vw,48px);box-shadow:0 12px 40px rgba(0,0,0,.07);box-sizing:border-box}
.flp h2,.fld h2{font-size:clamp(32px,5vw,48px);line-height:1.05;margin:8px 0 14px;color:var(--flv-green-dark)}
.flp-sub,.fld-sub{font-size:18px;line-height:1.55;margin-bottom:0}
.fld-eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--flv-green)}
.flp-price,.fld-offer{border-radius:12px;padding:18px;margin:22px 0;font-size:17px;line-height:1.5;box-sizing:border-box}
.flp-price{background:var(--flv-soft)}
.fld-offer{background:var(--flv-soft);border:0}
.flp-grid,.fld-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.flp label,.fld label,#gform_wrapper_5 .gfield_label,#gform_wrapper_6 .gfield_label{font-size:14px;font-weight:700;color:var(--flv-green-dark);display:block;margin-bottom:6px}
.flp input,.flp select,.fld input,.fld select,#gform_wrapper_5 input:not([type=checkbox]):not([type=radio]):not([type=submit]),#gform_wrapper_5 select,#gform_wrapper_5 textarea,#gform_wrapper_6 input:not([type=checkbox]):not([type=radio]):not([type=submit]),#gform_wrapper_6 select,#gform_wrapper_6 textarea{width:100%;box-sizing:border-box;padding:13px 14px!important;border:1px solid var(--flv-border)!important;border-radius:var(--flv-radius)!important;font-size:16px!important;line-height:1.35;background:#fff;color:#18201c;box-shadow:none!important;min-height:48px}
.flp input:focus,.flp select:focus,.fld input:focus,.fld select:focus,#gform_wrapper_5 input:focus,#gform_wrapper_5 select:focus,#gform_wrapper_5 textarea:focus,#gform_wrapper_6 input:focus,#gform_wrapper_6 select:focus,#gform_wrapper_6 textarea:focus{outline:3px solid rgba(30,71,50,.16)!important;outline-offset:1px;border-color:var(--flv-green)!important}
.flp button,.flp-book,.fld button,.fld-book,#gform_wrapper_5 .gform_button,#gform_wrapper_5 .gform_next_button,#gform_wrapper_6 .gform_button,#gform_wrapper_6 .gform_next_button{display:block;width:100%;box-sizing:border-box;background:var(--flv-green-dark)!important;color:#fff!important;border:0!important;border-radius:var(--flv-radius)!important;padding:15px 18px!important;margin-top:20px;font-weight:700!important;font-size:17px!important;line-height:1.25;text-align:center;text-decoration:none!important;cursor:pointer;min-height:52px;transition:opacity .18s ease,transform .18s ease}
.flp button:hover,.flp-book:hover,.fld button:hover,.fld-book:hover,#gform_wrapper_5 .gform_button:hover,#gform_wrapper_5 .gform_next_button:hover,#gform_wrapper_6 .gform_button:hover,#gform_wrapper_6 .gform_next_button:hover{opacity:.9;transform:translateY(-1px)}
.flp button:disabled,.fld button:disabled{opacity:.65;cursor:wait;transform:none}
.flp-error,.fld-error{display:none;background:var(--flv-error-bg);border:1px solid var(--flv-error-border);padding:12px 14px;border-radius:var(--flv-radius);margin-top:12px;line-height:1.45}
.flp-code,.fld-code{font-size:27px;font-weight:800;border-radius:12px;padding:18px;margin:20px 0;text-align:center;letter-spacing:.02em}
.flp-code{background:var(--flv-soft)}
.fld-code{background:var(--flv-cream);border:2px solid #d4ad00}
.fld-confirm{margin-top:18px;padding:15px 16px;background:var(--flv-soft);border-radius:var(--flv-radius)}
.fld-confirm label{display:flex;gap:11px;align-items:center;font-weight:600;margin:0;cursor:pointer}
.fld-confirm input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;position:static!important;opacity:1!important;pointer-events:auto!important;display:inline-block!important;flex:0 0 auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:0!important;padding:0!important;border:1px solid var(--flv-border)!important;border-radius:3px!important;box-shadow:none!important;accent-color:var(--flv-green-dark);cursor:pointer}
.fld-confirm input[type="checkbox"]:focus{outline:3px solid rgba(30,71,50,.16)!important;outline-offset:2px}
.fld-terms{margin-top:16px;font-size:12px;line-height:1.55;opacity:.75}
.fld-closed{text-align:center;padding:10px 0}

/* Referral Gravity Forms: consistent spacing and validation treatment. */
#gform_wrapper_5 .gfield,#gform_wrapper_6 .gfield{margin-bottom:16px}
#gform_wrapper_5 .gfield_description,#gform_wrapper_6 .gfield_description{font-size:13px;line-height:1.5}
#gform_wrapper_5 .gfield_error input,#gform_wrapper_5 .gfield_error select,#gform_wrapper_5 .gfield_error textarea,#gform_wrapper_6 .gfield_error input,#gform_wrapper_6 .gfield_error select,#gform_wrapper_6 .gfield_error textarea{border-color:var(--flv-error-border)!important;background:#fffafa}
#gform_wrapper_5 .validation_message,#gform_wrapper_6 .validation_message{background:var(--flv-error-bg);border:1px solid var(--flv-error-border);border-radius:var(--flv-radius);padding:10px 12px!important;margin-top:8px;color:#7c2020;font-size:13px}
#gform_wrapper_5 .gform_footer,#gform_wrapper_5 .gform_page_footer,#gform_wrapper_6 .gform_footer,#gform_wrapper_6 .gform_page_footer{margin-top:8px;padding-top:0}

@media(max-width:600px){
  .flp,.fld{margin:22px auto}
  .flp-card,.fld-card{padding:24px 18px;border-radius:14px}
  .flp-grid,.fld-grid{grid-template-columns:1fr;gap:14px}
  .flp h2,.fld h2{font-size:34px}
  .flp-sub,.fld-sub{font-size:16px}
}
