/* =========================================================
   JK Oferta Popup — styl dopasowany do sekcji "Spływy / Biesiada"
   Wszystkie reguły scope'owane #jk-oferta-modal + !important na
   właściwościach, o które "walczy" motyw (kolory/tła/obramowania),
   aby żaden globalny styl (zielony akcent Elementora) nie przebił.
   ========================================================= */
#jk-oferta-modal.jk-oferta-modal{
  --blue:#0e4d7c;--blue-d:#0a3a5e;--blue-light:#3fa1e8;--slate:#434a54;
  --bg:#f4f8fb;--paper:#fff;--ink:#1a2733;--muted:#5b6b78;--line:#e2ecf3;--danger:#d64545;
  position:fixed;inset:0;z-index:99999;display:none;
  align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto;
  font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;
}
#jk-oferta-modal.jk-oferta-modal.is-open{display:flex;}

/* Tło */
#jk-oferta-modal .jk-oferta-overlay{
  position:fixed;inset:0;background:rgba(10,32,52,.62);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
  opacity:0;transition:opacity .25s ease;
}
#jk-oferta-modal.is-open .jk-oferta-overlay{opacity:1;}

/* Okno — o ~30% szersze (560 -> 730) */
#jk-oferta-modal .jk-oferta-dialog{
  position:relative;z-index:1;width:100%;max-width:730px;margin:auto;
  background:var(--paper);border-radius:20px;
  box-shadow:0 40px 90px -30px rgba(10,58,94,.55);overflow:hidden;
  transform:translateY(18px) scale(.98);opacity:0;
  transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .3s ease;
}
#jk-oferta-modal.is-open .jk-oferta-dialog{transform:none;opacity:1;}

/* Przycisk zamknięcia — wymuszony, NIE zielony */
#jk-oferta-modal .jk-oferta-x{
  position:absolute;top:16px;right:16px;z-index:3;
  width:42px!important;height:42px!important;min-width:0!important;min-height:0!important;
  max-width:42px!important;padding:0!important;margin:0!important;flex:none!important;
  box-sizing:border-box!important;aspect-ratio:1/1;line-height:1!important;
  border:0!important;cursor:pointer;border-radius:50%!important;
  background:rgba(255,255,255,.18)!important;color:#fff!important;
  box-shadow:none!important;display:grid!important;place-items:center;transition:.2s;
}
#jk-oferta-modal .jk-oferta-x svg{width:20px;height:20px;}
#jk-oferta-modal .jk-oferta-x:hover{background:rgba(255,255,255,.34)!important;transform:rotate(90deg);}

/* Nagłówek */
#jk-oferta-modal .jk-oferta-head{
  background:linear-gradient(135deg,var(--blue) 0%,var(--blue-d) 100%)!important;
  color:#fff;padding:34px 40px 28px;
}
#jk-oferta-modal .jk-oferta-eyebrow{
  display:inline-block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:#fff!important;background:rgba(63,161,232,.4)!important;padding:6px 13px;border-radius:999px;margin-bottom:14px;
}
#jk-oferta-modal .jk-oferta-title{
  font-size:clamp(24px,3.4vw,30px);font-weight:800;line-height:1.12;letter-spacing:-.01em;color:#fff!important;margin:0;
}
#jk-oferta-modal .jk-oferta-desc{margin:10px 0 0;font-size:15px;line-height:1.5;color:rgba(255,255,255,.85)!important;}

/* Ciało / formularz */
#jk-oferta-modal .jk-oferta-body{padding:30px 40px 36px;}

/* ---------- Formularz Contact Form 7 ---------- */
#jk-oferta-modal .wpcf7 form{display:flex;flex-direction:column;gap:18px;}
#jk-oferta-modal .jk-field{display:flex;flex-direction:column;gap:6px;}
#jk-oferta-modal .jk-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
#jk-oferta-modal .jk-label{font-size:13px;font-weight:600;color:var(--ink)!important;letter-spacing:.01em;}
#jk-oferta-modal .jk-label .jk-req{color:var(--danger)!important;margin-left:2px;}
#jk-oferta-modal .jk-hint{font-size:11.5px;color:var(--muted)!important;font-weight:400;}

#jk-oferta-modal .wpcf7-form-control-wrap{display:block;width:100%;}
#jk-oferta-modal input.wpcf7-form-control,
#jk-oferta-modal select.wpcf7-form-control,
#jk-oferta-modal textarea.wpcf7-form-control,
#jk-oferta-modal .jk-date-input{
  width:100%!important;max-width:100%!important;height:auto!important;
  font-family:inherit!important;font-size:15px!important;line-height:1.4!important;color:var(--ink)!important;
  background:#fbfdff!important;border:1.5px solid var(--line)!important;border-radius:11px!important;
  padding:13px 15px!important;margin:0!important;box-shadow:none!important;
  transition:border-color .18s,box-shadow .18s,background .18s;-webkit-appearance:none!important;appearance:none!important;
}
#jk-oferta-modal input.wpcf7-form-control::placeholder,
#jk-oferta-modal .jk-date-input::placeholder{color:#9aa9b5!important;opacity:1;}
#jk-oferta-modal input.wpcf7-form-control:focus,
#jk-oferta-modal select.wpcf7-form-control:focus,
#jk-oferta-modal textarea.wpcf7-form-control:focus,
#jk-oferta-modal .jk-date-input:focus{
  outline:none!important;background:#fff!important;border-color:var(--blue-light)!important;
  box-shadow:0 0 0 4px rgba(63,161,232,.15)!important;
}

/* Datepicker — pole z ikoną */
#jk-oferta-modal .jk-date-wrap{position:relative!important;display:block!important;width:100%;}
#jk-oferta-modal .jk-date-wrap > svg{
  position:absolute;right:15px;top:50%;transform:translateY(-50%);
  width:18px;height:18px;color:var(--blue-light);pointer-events:none;z-index:2;
}
#jk-oferta-modal .jk-date-input{padding-right:44px!important;cursor:pointer;}

/* Rozwijany kalendarz flatpickr — ponad modalem, bez przycinania */
.flatpickr-calendar{z-index:100002!important;font-family:'Poppins',sans-serif!important;}
.flatpickr-day.selected,.flatpickr-day.selected:hover{
  background:#0e4d7c!important;border-color:#0e4d7c!important;
}
.flatpickr-day:hover{background:#eaf3fa!important;}
.flatpickr-months .flatpickr-month,
.flatpickr-weekdays,span.flatpickr-weekday{color:#0e4d7c!important;fill:#0e4d7c!important;}

/* Zgoda RODO */
#jk-oferta-modal .jk-consent .wpcf7-list-item{margin:0!important;}
#jk-oferta-modal .jk-consent label{
  display:flex!important;gap:11px;align-items:flex-start;cursor:pointer;
  font-size:12.5px;line-height:1.5;color:var(--muted)!important;font-weight:400!important;
}
#jk-oferta-modal .jk-consent input[type=checkbox]{
  flex:none;width:20px!important;height:20px!important;margin:1px 0 0!important;accent-color:var(--blue);cursor:pointer;
}
#jk-oferta-modal .jk-consent a{color:var(--blue)!important;text-decoration:underline!important;}

/* Przycisk wyślij — wymuszony granatowy, NIE zielony */
#jk-oferta-modal .jk-submit-wrap{margin-top:4px;}
#jk-oferta-modal .wpcf7-submit,
#jk-oferta-modal input.wpcf7-submit,
#jk-oferta-modal input[type=submit]{
  width:100%!important;font-family:inherit!important;font-weight:600!important;font-size:15.5px!important;
  color:#fff!important;cursor:pointer;text-transform:none!important;letter-spacing:0!important;
  background:linear-gradient(135deg,var(--blue) 0%,var(--blue-d) 100%)!important;
  border:0!important;border-radius:11px!important;padding:15px 24px!important;height:auto!important;
  box-shadow:0 16px 30px -16px rgba(14,77,124,.7)!important;transition:.2s;
}
#jk-oferta-modal .wpcf7-submit:hover,
#jk-oferta-modal input[type=submit]:hover{transform:translateY(-2px);box-shadow:0 20px 36px -16px rgba(14,77,124,.8)!important;}
#jk-oferta-modal .wpcf7-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;}

#jk-oferta-modal .wpcf7-spinner{margin:14px auto 0;display:block;}

/* Komunikaty CF7 */
#jk-oferta-modal .wpcf7-not-valid-tip{color:var(--danger)!important;font-size:12px;font-weight:500;margin-top:4px;display:block;}
#jk-oferta-modal .wpcf7-form-control.wpcf7-not-valid{border-color:var(--danger)!important;box-shadow:0 0 0 4px rgba(214,69,69,.12)!important;}
#jk-oferta-modal .wpcf7 form .wpcf7-response-output{
  margin:8px 0 0!important;padding:13px 16px!important;border-radius:11px!important;font-size:13.5px;line-height:1.45;border-width:1.5px!important;
}
#jk-oferta-modal .wpcf7 form.sent .wpcf7-response-output{border-color:#7bc47f!important;background:#eef8ef!important;color:#2f6b34!important;}
#jk-oferta-modal .wpcf7 form.invalid .wpcf7-response-output,
#jk-oferta-modal .wpcf7 form.failed .wpcf7-response-output{border-color:#e6b0b0!important;background:#fbeeee!important;color:#a13636!important;}

/* ---------- Przycisk-wyzwalacz na stronie (CTA "Zapytaj o ofertę") ----------
   Wymuszamy pierwotną paletę jk (biały / granat), żeby motyw nie robił z niego
   zielonego <button>. Dotyczy też sąsiedniego .jk-btn-o w bloku Biesiada.        */
.jk-btn-w.jk-oferta-open,
.jk-cta .jk-btn-w{
  background:#fff!important;color:#0e4d7c!important;border:0!important;
  text-decoration:none!important;box-shadow:none!important;
}
.jk-btn-w.jk-oferta-open:hover,
.jk-cta .jk-btn-w:hover{background:#3fa1e8!important;color:#fff!important;}
.jk-cta .jk-btn-o{
  background:transparent!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.5)!important;text-decoration:none!important;
}
.jk-cta .jk-btn-o:hover{border-color:#fff!important;background:rgba(255,255,255,.1)!important;}

/* ---------- Responsywność ---------- */
@media(max-width:760px){
  #jk-oferta-modal .jk-oferta-dialog{max-width:100%;}
}
@media(max-width:540px){
  #jk-oferta-modal.jk-oferta-modal{padding:0;}
  #jk-oferta-modal .jk-oferta-dialog{max-width:100%;min-height:100%;border-radius:0;margin:0;}
  #jk-oferta-modal .jk-oferta-head{padding:56px 22px 24px;}
  #jk-oferta-modal .jk-oferta-body{padding:22px 22px 40px;}
  #jk-oferta-modal .jk-row{grid-template-columns:1fr;}
}

body.jk-oferta-lock{overflow:hidden;}

@media (prefers-reduced-motion: reduce){
  #jk-oferta-modal .jk-oferta-overlay,
  #jk-oferta-modal .jk-oferta-dialog,
  #jk-oferta-modal .jk-oferta-x,
  #jk-oferta-modal .wpcf7-submit{transition:none!important;}
  #jk-oferta-modal .jk-oferta-dialog{transform:none!important;}
}
