/* AirDry Forms - frontend. Dziedziczy zmienne z arkusza AirDry, ma wlasne wartośći zapasowe. */
.af-wrap{
  --af-blue:var(--blue,#1F5FE0);
  --af-blue-light:var(--blue-light,#4C87F0);
  --af-navy:var(--navy,#0F1B3D);
  --af-ink-soft:var(--ink-soft,#53628A);
  --af-line:var(--grey-line,#E2E7F1);
  --af-pale:var(--blue-pale,#E8EFFB);
  font-family:inherit;
  color:var(--af-navy);
}
.af-title{margin:0 0 20px;font-size:1.375rem;font-weight:800;letter-spacing:-.02em;}
.af-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}
.af-col-full{grid-column:1 / -1;}
.af-col-half{grid-column:span 1;}
.af-field{display:flex;flex-direction:column;min-width:0;}
.af-label{font-size:.875rem;font-weight:700;margin-bottom:7px;}
.af-req{color:#D93025;}
.af-help{font-size:.8125rem;color:var(--af-ink-soft);margin-top:6px;}
.af-error{font-size:.8125rem;color:#D93025;margin-top:6px;min-height:0;}
.af-field.has-error input,.af-field.has-error select,.af-field.has-error textarea{border-color:#D93025;}

.af-form input[type=text],.af-form input[type=tel],.af-form input[type=email],
.af-form input[type=number],.af-form input[type=date],.af-form select,.af-form textarea{
  width:100%;box-sizing:border-box;
  font-family:inherit;font-size:1rem;color:var(--af-navy);
  padding:13px 15px;border:1px solid var(--af-line);border-radius:10px;background:#fff;
  transition:border-color .18s,box-shadow .18s;
}
.af-form input:focus,.af-form select:focus,.af-form textarea:focus{
  outline:none;border-color:var(--af-blue);box-shadow:0 0 0 3px rgba(31,95,224,.14);
}
.af-form input[type=file]{
  width:100%;box-sizing:border-box;font-family:inherit;font-size:.9375rem;
  padding:12px;border:1px dashed var(--af-line);border-radius:10px;background:#fff;
}
.af-form textarea{resize:vertical;min-height:110px;}

.af-choices{display:flex;flex-wrap:wrap;gap:10px;}
.af-choice{
  display:inline-flex;align-items:center;gap:9px;
  padding:11px 15px;border:1px solid var(--af-line);border-radius:10px;background:#fff;
  font-size:.9375rem;cursor:pointer;transition:border-color .18s,background .18s;
}
.af-choice:hover{border-color:var(--af-blue);}
.af-choice input{margin:0;accent-color:var(--af-blue);}
.af-choice:has(input:checked){border-color:var(--af-blue);background:var(--af-pale);}

.af-consent{display:flex;align-items:flex-start;gap:11px;font-size:.875rem;color:var(--af-ink-soft);line-height:1.5;cursor:pointer;}
.af-consent input{margin-top:3px;accent-color:var(--af-blue);flex:none;}
.af-heading{margin:8px 0 0;font-size:1.0625rem;font-weight:800;}
.af-paragraph{margin:0;font-size:.9375rem;color:var(--af-ink-soft);}

.af-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

.af-actions{margin-top:22px;}
.af-btn{
  position:relative;display:inline-flex;align-items:center;justify-content:center;
  font-family:inherit;font-size:1rem;font-weight:700;color:#fff;
  padding:16px 34px;min-height:54px;border:0;cursor:pointer;
  background:linear-gradient(120deg,var(--af-blue),var(--af-blue-light));
  clip-path:polygon(20px 0,100% 0,calc(100% - 20px) 100%,0 100%);
  transition:transform .18s,filter .18s;
}
.af-btn:hover{transform:translateY(-2px);}
.af-btn:disabled{opacity:.65;cursor:default;transform:none;}

.af-msg{margin-top:20px;}
.af-msg:empty{display:none;}
.af-msg.is-ok{padding:20px 22px;border-radius:12px;background:var(--af-pale);border:1px solid rgba(31,95,224,.25);}
.af-msg.is-err{padding:16px 20px;border-radius:12px;background:#FDECEA;border:1px solid #F5C6C2;color:#8A1C14;}
.af-msg p{margin:0 0 10px;font-size:.9375rem;line-height:1.6;}
.af-msg p:last-child{margin-bottom:0;}
.af-msg-extra{padding-top:10px;border-top:1px solid rgba(31,95,224,.2);font-weight:600;}

@media (max-width:640px){
  .af-grid{grid-template-columns:1fr;}
  .af-col-half{grid-column:1 / -1;}
  .af-btn{width:100%;}
}
