/* Kontakt: nagłówek, jedno zdanie i formularz w tej samej szklanej karcie co na landingach.
   Kolory wyłącznie ze zmiennych --home-* z ../home.css (oba motywy). */
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start;padding-block:72px 96px!important}
.contact-copy{padding-top:24px}
.cft-home .contact-copy h1{font-size:clamp(40px,4.6vw,60px);font-weight:550;line-height:1.1;letter-spacing:-.055em;margin:0 0 20px}
.contact-copy h1 span{color:var(--home-gold)}
.contact-copy p{font-size:17px;max-width:32ch;color:var(--home-muted)}

.contact-art{position:relative;min-width:0}
.contact-art>img{position:absolute;right:-70px;top:-60px;width:300px;opacity:.5;pointer-events:none;user-select:none}
.contact-card{position:relative;border-radius:24px;padding:30px 32px 24px;max-width:560px}

.contact-field{margin-bottom:16px}
.contact-field label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--home-ink)}
.contact-field input,.contact-field select,.contact-field textarea{display:block;width:100%;max-width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--home-line);border-radius:12px;background:var(--home-solid);color:var(--home-ink);font-size:16px;line-height:1.45;box-shadow:none}
.contact-field textarea{resize:vertical;min-height:160px}
.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:var(--home-muted)}
.cft-home .contact-field :focus-visible,.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{outline:3px solid var(--home-focus);outline-offset:2px;border-color:var(--home-focus)}
.contact-field [aria-invalid="true"]{border-color:var(--home-rose);border-width:2px}
.contact-error{margin:6px 0 0!important;font-size:13px;font-weight:600;color:var(--home-rose)}
.contact-error:empty{display:none}

/* Pułapka na boty: poza ekranem, niedostępna z klawiatury i dla czytników. */
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin-top:6px}
.contact-send{min-height:48px;padding:12px 30px;border:0;border-radius:999px;background:var(--home-ink);color:var(--home-paper)!important;font-size:15px;font-weight:650;cursor:pointer;transition:background .15s ease}
.contact-send:hover{background:var(--home-gold)}
.contact-send[disabled]{opacity:.65;cursor:progress}
.contact-status{margin:0!important;font-size:14px;flex:1 1 220px}
.contact-status.is-ok,.contact-status.is-error{padding:8px 0 8px 12px;border-left:3px solid var(--home-green)}
.contact-status.is-error{border-left-color:var(--home-rose)}
.contact-privacy{margin:18px 0 0!important;padding-top:14px;border-top:1px solid var(--home-line);font-size:12px;color:var(--home-muted)}
.contact-card a{color:var(--home-ink);text-decoration:underline}

/* Komunikaty dla wysyłki bez JavaScriptu (adres #wyslano, #blad, #blad-dane). */
.contact-note{display:none;margin-bottom:18px;padding:10px 0 10px 12px;border-left:3px solid var(--home-rose);font-size:14px;font-weight:600}
.contact-note.is-ok{border-left-color:var(--home-green)}
.contact-note:target{display:block}

@media(max-width:790px){
  .contact{grid-template-columns:1fr;gap:18px;padding-block:44px 64px!important}
  .contact-copy{padding-top:0}
  .contact-art>img{right:-40px;top:-90px;width:220px;opacity:.38}
}
@media(max-width:520px){
  .contact-card{padding:22px 16px 18px;border-radius:20px}
  .contact-art>img{display:none}
  .contact-copy p{font-size:15px}
}
