/* JCP public styles. Everything is scoped under .jcp-* to avoid theme collisions. */
.jcp-form-wrap{--jcp-navy:#1C2D59;--jcp-orange:#FFAE16;--jcp-bg:#F5F7FB;--jcp-line:#c9d1e3;--jcp-err:#a31515;max-width:760px;margin:0 auto;padding:28px;background:#fff;border:1px solid var(--jcp-line);border-radius:14px;color:var(--jcp-navy);box-shadow:0 2px 14px rgba(28,45,89,.07);font-size:1rem;line-height:1.5;box-sizing:border-box}
.jcp-form-wrap *,.jcp-form-wrap *::before,.jcp-form-wrap *::after{box-sizing:border-box}
.jcp-form-title{margin:0 0 18px;font-size:1.6rem;line-height:1.2;color:var(--jcp-navy)}
.jcp-field{margin:0 0 18px;display:flex;flex-direction:column;gap:6px}
.jcp-field label{font-weight:600}
.jcp-req{color:var(--jcp-err)}
.jcp-field input,.jcp-field select,.jcp-field textarea{width:100%;padding:12px 14px;font:inherit;color:var(--jcp-navy);background:#fff;border:1.5px solid #8a96b4;border-radius:8px}
.jcp-field input[readonly]{background:var(--jcp-bg)}
.jcp-field input:focus-visible,.jcp-field select:focus-visible,.jcp-field textarea:focus-visible,.jcp-btn:focus-visible,.jcp-error-summary:focus-visible{outline:3px solid var(--jcp-navy);outline-offset:2px}
.jcp-field.has-error input,.jcp-field.has-error select,.jcp-field.has-error textarea{border-color:var(--jcp-err);border-width:2px}
.jcp-hint{font-size:.875rem;color:#3d4a73}
.jcp-field-error{font-size:.9rem;color:var(--jcp-err);font-weight:600}
.jcp-row{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
@media (max-width:640px){.jcp-form-wrap{padding:18px}.jcp-row{grid-template-columns:1fr}}
.jcp-privacy{font-size:.875rem;color:#3d4a73;margin:0 0 12px}
.jcp-btn{display:inline-block;font:inherit;font-weight:700;padding:14px 26px;border-radius:8px;border:0;cursor:pointer}
.jcp-btn--primary{background:var(--jcp-orange);color:var(--jcp-navy)}
.jcp-btn--primary:hover{filter:brightness(.95)}
.jcp-btn[disabled]{opacity:.65;cursor:progress}
.jcp-notice{margin:0 0 18px;padding:14px 16px;border-radius:8px;border-left:5px solid;font-weight:600}
.jcp-notice--success{background:#e8f6ee;border-color:#157a45;color:#0d4d2b}
.jcp-notice--error{background:#fdecec;border-color:var(--jcp-err);color:#6e0f0f}
.jcp-notice--info{background:#e9eefb;border-color:var(--jcp-navy);color:var(--jcp-navy)}
.jcp-error-summary{margin:0 0 18px;padding:14px 16px;border:2px solid var(--jcp-err);border-radius:8px;background:#fdecec;color:#6e0f0f}
.jcp-error-summary ul{margin:8px 0 0 18px;padding:0}
.jcp-error-summary a{color:inherit;font-weight:600}
.jcp-hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
@media (prefers-reduced-motion:reduce){.jcp-btn{transition:none}}/* Newsletter signup */
.jcp-subscribe{max-width:560px}
.jcp-subscribe .jcp-check{display:flex;gap:10px;align-items:flex-start;margin:8px 0;font-weight:400}
.jcp-subscribe .jcp-check input{flex:0 0 auto;width:auto;margin:4px 0 0}
.jcp-subscribe fieldset{border:1px solid #dbe1ef;border-radius:8px;padding:8px 14px;margin:0 0 14px}
.jcp-subscribe legend{padding:0 4px;font-weight:600}
.jcp-subscribe .jcp-notice{padding:10px 14px;border-radius:8px;background:#eef6ee;color:#1f4d1f}
.jcp-subscribe .jcp-notice[role=alert]{background:#fdecec;color:#7a1c1c}
