/* Formularz kontaktowy */
.form-card { background:linear-gradient(135deg,rgba(21,32,80,.9),rgba(13,21,51,.95)); border:1px solid rgba(212,175,55,.3); border-radius:24px; padding:32px 22px; }
.form-card.anim { animation:fadeInUp .8s ease-out both; }
.form-head { text-align:center; margin-bottom:24px; }
.form-title { font-family:var(--serif); font-size:clamp(1.5rem,6vw,2.25rem); font-weight:700; line-height:1.25; color:var(--white); margin-bottom:12px; }
.form-title span { color:var(--gold); }
.form-lead { font-family:var(--cormorant); font-size:1.125rem; font-style:italic; color:var(--gold-pale); line-height:1.5; }
.contact-form { display:grid; grid-template-columns:1fr; gap:16px; text-align:left; }
.field { display:flex; flex-direction:column; gap:6px; }
.field label { font-size:.875rem; font-weight:600; color:var(--gold-pale); }
.field abbr { color:var(--gold-light); text-decoration:none; }
.field input, .field textarea { width:100%; min-height:48px; padding:12px 14px; background:rgba(13,21,51,.7); border:1px solid rgba(212,175,55,.3); border-radius:12px; color:var(--white); font:400 1rem/1.4 var(--sans); color-scheme:dark; }
.field textarea { resize:vertical; min-height:130px; }
.field input::placeholder { color:var(--muted); opacity:.8; }
.field input:focus-visible, .field textarea:focus-visible { outline:2px solid var(--gold-light); outline-offset:2px; border-color:var(--gold); }
.field input:user-invalid, .field textarea:user-invalid { border-color:#ff8a80; }
.field-hint { font-size:.8125rem; color:var(--muted); line-height:1.5; }
.hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.form-submit { display:flex; align-items:center; justify-content:center; width:100%; min-height:52px; padding:14px 24px; border:0; border-radius:50px; background:linear-gradient(135deg,var(--gold),var(--gold-light) 50%,var(--gold-dark)); color:var(--navy-deep); font:700 1rem/1 var(--sans); letter-spacing:.05em; cursor:pointer; }
.form-submit:disabled { opacity:.6; cursor:progress; }
.form-submit:focus-visible { outline:2px solid var(--gold-light); outline-offset:4px; }
.form-status { margin-top:12px; font-size:.9375rem; line-height:1.5; min-height:1.5em; }
.form-status.ok { color:#a5d6a7; }
.form-status.err { color:#ff8a80; }
.form-legal { font-size:.8125rem; color:var(--muted); line-height:1.6; }
.form-legal a { color:var(--gold-pale); }
@media (min-width: 900px) {
  .form-card { padding:56px 48px; }
  .contact-form { grid-template-columns:1fr 1fr; gap:20px 24px; max-width:820px; margin:0 auto; }
  .field-wide { grid-column:1 / -1; }
  .form-submit { max-width:320px; margin:0 auto; }
  .form-status { text-align:center; }
  .form-legal { text-align:center; }
}
@media (prefers-reduced-motion: reduce) { .form-card.anim { animation:none; } }

.form-card { position:relative; }
.form-success { position:absolute; inset:0; z-index:5; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:32px 24px; text-align:center; border-radius:inherit; background:rgba(13,21,51,.95); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); animation:fadeIn .4s ease-out both; }
.form-success[hidden] { display:none; }
.form-success:focus { outline:none; }
.success-icon { width:72px; height:72px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:rgba(165,214,167,.12); border:2px solid #a5d6a7; color:#a5d6a7; }
.success-icon svg { width:36px; height:36px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.success-title { font:700 clamp(1.75rem,6vw,2.25rem)/1.2 var(--serif); color:var(--gold); }
.success-text { max-width:420px; font-size:1.0625rem; line-height:1.6; color:var(--cream); }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion: reduce) { .form-success { animation:none; } }

.k-wrap .form-card { margin-top:8px; }
.k-wrap .form-title { text-align:center; margin-bottom:24px; }
