/* Solidental – formularz kontaktowy / 7 languages / 2026-11-04 */
#kontakt .sd-contact-section { margin: 62px auto 8px; padding: 42px clamp(17px,4vw,48px); background: #f8fbfb; border-top: 4px solid #10b6bd; border-radius: 9px; box-shadow: 0 10px 38px rgba(0,0,0,.21); text-align: left; color: #192a31; }
#kontakt .sd-contact-section *, #kontakt .sd-contact-section *::before, #kontakt .sd-contact-section *::after { box-sizing: border-box; }
#kontakt .sd-contact-section h2 { font-size: clamp(24px,2.6vw,34px); line-height: 1.2; font-weight: 600; color: #152b31; text-align: left; margin: 0 0 14px; }
#kontakt .sd-contact-section .sd-contact-lead { margin: 0 0 25px; color: #41515a; line-height: 1.65; font-size: 15px; text-align: left; max-width: 820px; }
#kontakt .sd-form { display: block; max-width: 100%; margin: 0; padding: 0; }
#kontakt .sd-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 22px; }
#kontakt .sd-form-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
#kontakt .sd-form-wide { grid-column: 1 / -1; }
#kontakt .sd-form label { font-size: 13px; line-height: 1.45; font-weight: 700; color: #1b3439; }
#kontakt .sd-form input:not([type=hidden]), #kontakt .sd-form select, #kontakt .sd-form textarea { display: block; width: 100%; max-width: 100%; min-height: 48px; padding: 11px 13px; color: #172f34; background: #fff; border: 1px solid #b6c9cd; border-radius: 5px; font: 400 15px/1.55 Montserrat,sans-serif; box-shadow: none; outline: none; transition: border-color .15s, box-shadow .15s; }
#kontakt .sd-form textarea { min-height: 142px; resize: vertical; }
#kontakt .sd-form input:focus, #kontakt .sd-form select:focus, #kontakt .sd-form textarea:focus { border-color: #028e97; box-shadow: 0 0 0 3px rgba(16,182,189,.19); }
#kontakt .sd-form-field .sd-hint { margin: 0; font-size: 12px; line-height: 1.6; color: #53626a; text-align: left; }
#kontakt .sd-form-field .sd-hint a, #kontakt .sd-form-privacy a, #kontakt .sd-contact-lead a { color: #006d76; font-size: inherit; font-weight: 700; border-bottom: 1px solid #10b6bd; }
#kontakt .sd-form-privacy { margin: 17px 0 18px; font-size: 12px; line-height: 1.75; color: #475a61; text-align: left; }
#kontakt .sd-form-turnstile { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 5px 0 15px; min-height: 65px; }
#kontakt .sd-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
#kontakt .sd-form .sd-submit { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 12px 29px; color: #fff !important; background: #008e97; border: 0; border-radius: 5px; font: 700 14px/1.3 Montserrat,sans-serif; letter-spacing: .2px; cursor: pointer; transition: background .18s; }
#kontakt .sd-form .sd-submit:hover:not(:disabled) { background: #00737d; }
#kontakt .sd-form .sd-submit:disabled { background: #8bafb0; cursor: not-allowed; }
#kontakt .sd-form .sd-status { margin: 0; padding: 0; color: #33474c; font-size: 13px; line-height: 1.55; text-align: left; }
#kontakt .sd-form .sd-status[data-kind=error] { color: #9a291e; font-weight: 600; }
#kontakt .sd-form .sd-status[data-kind=success] { color: #096039; font-weight: 600; }
#kontakt .sd-form .sd-config-message { margin: 0; color: #7d4a16; font-size: 13px; line-height: 1.5; text-align: left; }
#kontakt .sd-form .sd-honeypot { position: absolute !important; left: -9999px !important; top: auto !important; width: 1px !important; height: 1px !important; opacity: 0 !important; overflow: hidden !important; }
#kontakt .sd-form-note { padding-top: 18px; margin-top: 25px; text-align: left; border-top: 1px solid #d4e1e2; font-size: 12px; color: #526369; line-height: 1.7; }
#kontakt .sd-form-note a { color: #006d76; font-size: inherit; font-weight: 700; }
#kontakt .sd-contact-section p { hyphens: none; }
@media (max-width: 767px) {
  #kontakt .sd-contact-section { margin-top: 40px; padding: 28px 18px 30px; border-radius: 6px; }
  #kontakt .sd-form-grid { grid-template-columns: minmax(0,1fr); gap: 17px; }
  #kontakt .sd-form-wide { grid-column: 1; }
  #kontakt .sd-form .sd-submit { width: 100%; }
  #kontakt .sd-form-actions { display: block; }
  #kontakt .sd-form .sd-status { margin-top: 13px; }
  #kontakt .sd-form-turnstile { overflow: auto; }
}
@media (prefers-reduced-motion: reduce) { #kontakt .sd-form * { transition: none !important; } }

/* 2026-11-05: czytelny tekst opcji tematu kontaktu w natywnej liscie rozwijanej.
   Na niektorych systemach opcje dziedziczyly bialy kolor tekstu. */
#kontakt .sd-form select {
  color: #172f34 !important;
  background-color: #ffffff !important;
  color-scheme: only light !important;
}
#kontakt .sd-form select option,
#kontakt .sd-form select optgroup {
  color: #172f34 !important;
  background-color: #ffffff !important;
  color-scheme: only light !important;
}

/* 2026-11-05: explicitly style native option list and selected state. */
#kontakt .sd-form-field select[name="topic"] option,
#kontakt .sd-form-field select[name="topic"] optgroup {
  background: #ffffff !important;
  color: #172f34 !important;
}
#kontakt .sd-form-field select[name="topic"] option:checked {
  background: #d7f4f4 !important;
  color: #102c31 !important;
}
