.elementor-40 .elementor-element.elementor-element-ac3cd18{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 20px;--row-gap:0px;--column-gap:20px;--margin-top:4%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-40 .elementor-element.elementor-element-0269c5f{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-40 .elementor-element.elementor-element-220a3f0 img{border-radius:16px 16px 16px 16px;}.elementor-40 .elementor-element.elementor-element-dbeb4ae{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-40 .elementor-element.elementor-element-dbeb4ae.e-con{--align-self:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-40 .elementor-element.elementor-element-a6d081d{margin:4% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-40 .elementor-element.elementor-element-a6d081d .elementor-heading-title{font-family:"Times New Roman", Sans-serif;font-size:32px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-40 .elementor-element.elementor-element-f726e21{width:100%;max-width:100%;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-40 .elementor-element.elementor-element-ac3cd18{--content-width:1280px;}.elementor-40 .elementor-element.elementor-element-0269c5f{--width:50%;}.elementor-40 .elementor-element.elementor-element-dbeb4ae{--width:50%;}}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for shortcode, class: .elementor-element-f726e21 *//* KONTENER */
.cf7-modern {
  --gold: #BFA05A;
  --text: #000;
  --muted: #6B7280;
  --line: #E5E7EB;
  --bg: #fff;
  max-width: 640px;
  margin-left: auto;
}

/* POLE */
.cf7-modern .field {
  position: relative;
  margin-bottom: 22px;
}

/* INPUTY / TEXTAREA */
.cf7-modern input[type="text"],
.cf7-modern input[type="email"],
.cf7-modern textarea {
  width: 100%;
  appearance: none;
  background: var(--bg);
  color: var(--text);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px 18px;                /* lekko większy padding */
  font-size: 16px;
  line-height: 1.4;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
  outline: none !important;          /* wyłącz domyślny outline */
}

/* FOCUS – ZŁOTY, nadpisanie motywu/bootstrapa */
.cf7-modern input[type="text"]:focus,
.cf7-modern input[type="email"]:focus,
.cf7-modern textarea:focus {
  border-color: var(--gold) !important;
  outline: none !important;
}

/* Chrome/Akt. Edge potrafią dodać niebieski ring – wyłączamy */
.cf7-modern input[type="text"]:focus-visible,
.cf7-modern input[type="email"]:focus-visible,
.cf7-modern textarea:focus-visible {
  outline: none !important;
}

/* Etykieta */
.cf7-modern .field > label {
  position: absolute;
  left: 14px;
  top: 50%;                          /* środek pola */
  transform: translateY(-50%);
  padding: 0 6px;
  background: var(--bg);
  color: var(--muted);
  font-size: 15px;
  pointer-events: none;
  transition: all .2s ease;
}

/* Tekstarea – label start wyżej */
.cf7-modern .field.textarea > label {
  top: 18px;
  transform: none;
}

/* „Float” gdy focus lub niepuste (placeholder:" ") */
.cf7-modern input[type="text"]:focus + label,
.cf7-modern input[type="text"]:not(:placeholder-shown) + label,
.cf7-modern input[type="email"]:focus + label,
.cf7-modern input[type="email"]:not(:placeholder-shown) + label,
.cf7-modern textarea:focus + label,
.cf7-modern textarea:not(:placeholder-shown) + label {
  top: -10px;
  transform: none;
  font-size: 12px;
  color: var(--gold);
  background: var(--bg);
  padding: 0 6px;
}

/* Textarea – wysokość */
.cf7-modern textarea { min-height: 160px; resize: vertical; }

/* Błędy */
.wpcf7 .wpcf7-not-valid { border-color: #d03a3a !important; }
.wpcf7 .wpcf7-not-valid-tip { color:#d03a3a; font-size:13px; margin-top:6px; }

/* Komunikaty po wysyłce */
.wpcf7-response-output { margin-top:16px; border-radius:10px; padding:12px 14px; font-size:14px; }
.wpcf7-mail-sent-ok { background:#e6f5e9; border:1px solid #2b7a3d; color:#2b7a3d; }
.wpcf7-validation-errors, .wpcf7-acceptance-missing { background:#fbeaea; border:1px solid #a4282a; color:#a4282a; }

/* Przycisk */
.cf7-modern .btn-modern,
.wpcf7 input[type="submit"].btn-modern {
  display:inline-block; background:var(--gold); color:#fff; border:0; border-radius:999px;
  padding:14px 30px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; cursor:pointer;
  transition: transform .08s ease, box-shadow .2s ease, background .2s ease;
  box-shadow: 0 6px 16px rgba(191,160,90,.28);
}
.cf7-modern .btn-modern:hover { background:#000; box-shadow:0 8px 22px rgba(0,0,0,.18); }
.cf7-modern .btn-modern:active { transform: translateY(1px); }

/* Autofill (Chrome żółci inputy) – ujednolicenie */
.cf7-modern input:-webkit-autofill,
.cf7-modern input:-webkit-autofill:hover,
.cf7-modern input:-webkit-autofill:focus,
.cf7-modern textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  -webkit-text-fill-color: #000 !important;
  transition: background-color 5000s ease-in-out 0s;
}

.wpcf7 form .wpcf7-response-output{
  border-width: 1px !important;   /* zmniejsz grubość */
  border-radius: 10px;
  padding: 10px 12px;
  box-shadow: none !important;     /* gdyby motyw dodawał cień */
  outline: none !important;        /* na wszelki wypadek */
}

@media (max-width: 680px){ .cf7-modern { max-width: 100%; } }

/* SELECT – wygląd jak inputy */
.cf7-modern select {
  width: 100%;
  appearance: none;                  /* ukryj natywną strzałkę */
  background: var(--bg);
  color: var(--text);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px 42px 16px 18px;      /* miejsce na strzałkę */
  font-size: 16px;
  line-height: 1.4;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
  outline: none !important;
  /* własna strzałka */
  background-image:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.cf7-modern select:focus {
  border-color: var(--gold) !important;
  outline: none !important;
}

/* Etykieta przy polu select – startowo jak przy inputach */
.cf7-modern .field.select > label {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  padding: 0 6px;
  background: var(--bg);
  color: var(--muted);
  font-size: 15px;
  pointer-events: none;
  transition: all .2s ease;
}

/* PŁYWAJĄCA ETYKIETA dla SELECT (CSS bez JS – wymaga :has) */
.cf7-modern .field:has(select:focus) > label,
.cf7-modern .field:has(select option:checked:not([value=""])) > label {
  top: -10px;
  transform: none;
  font-size: 12px;
  color: var(--gold);
  background: var(--bg);
  padding: 0 6px;
}

/* Fallback gdyby przeglądarka nie wspierała :has() – klasa .has-value (patrz JS niżej) */
/* Fallback gdyby przeglądarka nie wspierała :has() – klasa .has-value (patrz JS niżej) */
.cf7-modern .field.has-value > label,
.cf7-modern .field:focus-within > label {
  top: -10px;
  transform: none;
  font-size: 12px;
  color: var(--gold);
  background: var(--bg);
  padding: 0 6px;
}/* End custom CSS */