/* NP Claim Flow – Auth Card layout */
.npfc-auth{max-width:980px;margin:30px auto;padding:16px;}
.npfc-auth__card{display:grid;grid-template-columns: 42% 58%;border-radius:18px;overflow:hidden;border:1px solid rgba(0,0,0,.10);background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.10);}
@media (max-width: 860px){.npfc-auth__card{grid-template-columns:1fr;}}
.npfc-auth__art{min-height:520px;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;}
@media (max-width: 860px){.npfc-auth__art{min-height:220px;}}
/* fallback pattern if no bg image */
.npfc-auth__art:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(0,0,0,.55), rgba(0,0,0,.10));}
.npfc-auth__form{padding:34px 34px 28px; background:#fff;}
@media (max-width: 860px){.npfc-auth__form{padding:26px 18px 20px;}}
.npfc-auth__title{font-size:44px;line-height:1.05;margin:0 0 10px;font-weight:800;letter-spacing:-0.02em;}
.npfc-auth__subtitle{margin:0 0 18px;opacity:.75;font-size:15px;}

/* Form */
.npfc-form{margin-top:8px;}
.npfc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;}
@media (max-width: 700px){.npfc-grid{grid-template-columns:1fr;}}
.npfc-field{display:flex;flex-direction:column;gap:8px;}
.npfc-field label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;opacity:.75;}
.npfc-field input[type="text"],
.npfc-field input[type="email"],
.npfc-field input[type="tel"],
.npfc-field input[type="number"],
.npfc-field select,
.npfc-field textarea{
  width:100%;
  height:46px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.18);
  border-radius:10px;
  background:#fff;
  transition:border-color .15s ease, box-shadow .15s ease;
  outline:none;
}
.npfc-field textarea{height:auto;min-height:110px;resize:vertical;}
.npfc-field input:focus,
.npfc-field select:focus,
.npfc-field textarea:focus{
  border-color: rgba(0,0,0,.55);
  box-shadow:0 0 0 4px rgba(0,0,0,.06);
}
.npfc-field .npfc-field__error{margin-top:-2px;color:#b42318;font-size:13px;}
.npfc-errors{margin:0 0 14px;padding:12px 14px;border-radius:12px;border:1px solid rgba(214,54,56,.25);background:rgba(214,54,56,.06);color:#7a1b1d;}
.npfc-actions{display:flex;gap:14px;align-items:center;margin-top:22px;}
.npfc-submit{appearance:none;border:0;border-radius:12px;padding:14px 18px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#223a70;color:#fff;min-width:180px;}
.npfc-submit:hover{filter:brightness(1.05);}
.npfc-note{font-size:12px;opacity:.65;}

/* Consensi */
.npfc-consents{margin-top:16px;display:flex;flex-direction:column;gap:10px;}
.npfc-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.35;opacity:.9;}
.npfc-consent input{margin-top:3px;}
.npfc-consent a{text-decoration:underline;}
.npfc-consent.is-error{padding:10px 12px;border-radius:12px;border:1px solid rgba(214,54,56,.25);background:rgba(214,54,56,.06);}
