.jcf-page,
.jcf-page *,
.jcf-legal-document,
.jcf-legal-document * { box-sizing: border-box; }
.jcf-form-page-active .content-page { max-width:none!important; margin:0!important; padding:0!important; }
.jcf-form-page-active .content-page>article>.section-heading { display:none!important; }
.jcf-form-page-active .content-page .entry-content { margin:0!important; }
.jcf-form-page-active .content-page>article { margin:0!important; padding:0!important; }
.jcf-page { --jcf-navy:#0d3435; --jcf-coral:#ef6b51; --jcf-paper:#fffdf9; --jcf-mint:#b9ddd2; --jcf-muted:#58716e; width:100%; min-height:calc(100vh - 126px); padding:38px 0 30px; overflow:hidden; background:#edf3f0; color:var(--jcf-navy); font-family:Arial,sans-serif; }
.jcf-page a { color:inherit; text-decoration:none; }
.jcf-shell { width:min(1380px,94vw); min-height:800px; margin:0 auto; display:grid; grid-template-columns:34% 66%; overflow:hidden; border-radius:22px; background:#fff; box-shadow:0 24px 70px #143a3420; }
.jcf-sidebar { padding:58px 48px; display:flex; flex-direction:column; background:var(--jcf-navy); color:#fff; }
.jcf-eyebrow { margin:0 0 8px; color:var(--jcf-coral); font-size:10px; font-weight:800; letter-spacing:.15em; }
.jcf-sidebar h1 { margin:0; color:#fff; font-size:clamp(42px,4vw,64px); line-height:1.02; letter-spacing:-.05em; }
.jcf-sidebar h1 em { display:block; color:var(--jcf-coral); font-family:Georgia,serif; font-weight:400; }
.jcf-sidebar>p:not(.jcf-eyebrow) { max-width:390px; color:#b8cfca; line-height:1.7; }
.jcf-promise { margin:25px 0 35px; padding:16px; display:flex; gap:12px; border:1px solid #ffffff20; border-radius:12px; background:#ffffff08; }
.jcf-promise>span { width:34px; height:34px; display:grid; place-items:center; flex:0 0 auto; border-radius:9px; background:var(--jcf-mint); color:var(--jcf-navy); font-weight:900; }
.jcf-promise strong,.jcf-promise small { display:block; }
.jcf-promise small { margin-top:5px; color:#a8c4be; line-height:1.4; }
.jcf-sidebar ol { margin:auto 0 0; padding:0; list-style:none; }
.jcf-sidebar li { position:relative; min-height:42px; padding:0 0 25px 52px; display:flex; align-items:center; color:#749590; font-size:13px; font-weight:700; }
.jcf-sidebar li::before { content:""; position:absolute; left:18px; top:37px; width:1px; height:22px; background:#ffffff20; }
.jcf-sidebar li:last-child::before { display:none; }
.jcf-sidebar li i { position:absolute; left:0; width:36px; height:36px; display:grid; place-items:center; border:1px solid #ffffff25; border-radius:50%; font-style:normal; }
.jcf-sidebar li.active { color:#fff; }
.jcf-sidebar li.active i { border-color:var(--jcf-coral); background:var(--jcf-coral); }
.jcf-sidebar li.done { color:#b9d3cc; }
.jcf-sidebar li.done i { border-color:var(--jcf-mint); background:var(--jcf-mint); color:var(--jcf-navy); }
.jcf-form-wrap { min-width:0; padding:38px 58px 45px; }
.jcf-progress { display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; color:var(--jcf-muted); font-size:11px; }
.jcf-progress>div { height:5px; overflow:hidden; border-radius:5px; background:#e6ece9; }
.jcf-progress i { display:block; height:100%; background:var(--jcf-coral); transition:width .25s; }
.jcf-progress strong { color:var(--jcf-navy); }
.jcf-step { padding-top:42px; }
.jcf-step-heading { margin-bottom:34px; display:flex; gap:20px; }
.jcf-step-heading>span { width:54px; height:54px; display:grid; place-items:center; flex:0 0 auto; border-radius:14px; background:#e2f0ea; color:#5a7773; font-family:Georgia,serif; font-size:25px; }
.jcf-step-heading h2 { margin:0; color:var(--jcf-navy); font-family:Georgia,serif; font-size:clamp(34px,3vw,48px); line-height:1.05; }
.jcf-step-heading div>p:last-child { margin:9px 0 0; color:var(--jcf-muted); font-size:13px; line-height:1.55; }
.jcf-grid { margin-bottom:22px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.jcf-field { display:block; }
.jcf-field.jcf-wide,.jcf-check.jcf-wide { grid-column:1/-1; }
.jcf-field>span { display:block; margin-bottom:8px; color:#45615f; font-size:12px; font-weight:800; }
.jcf-field b,.jcf-options b,.jcf-timing b,.jcf-payment b { color:var(--jcf-coral)!important; }
.jcf-field input,.jcf-field select,.jcf-field textarea { width:100%; min-height:48px; padding:13px 15px; border:1px solid #cfdad5; border-radius:9px; outline:none; background:#fff; color:var(--jcf-navy); font:inherit; }
.jcf-field textarea { min-height:90px; resize:vertical; }
.jcf-field input:focus,.jcf-field select:focus,.jcf-field textarea:focus { border-color:var(--jcf-coral); box-shadow:0 0 0 3px #ef6b5117; }
.jcf-check,.jcf-toggle { display:flex; gap:10px; align-items:flex-start; color:#526c69; font-size:12px; line-height:1.5; }
.jcf-check input[type="checkbox"],.jcf-toggle input[type="checkbox"],.jcf-options input[type="radio"],.jcf-options input[type="checkbox"],.jcf-ack-list input[type="checkbox"],.jcf-payment input[type="radio"],.jcf-timing input[type="radio"] { width:17px; height:17px; flex:0 0 auto; accent-color:var(--jcf-coral); }
.jcf-toggle { margin:5px 0 26px; padding:14px; border:1px solid #dce5e0; border-radius:10px; background:#f8fbf9; font-weight:700; }
.jcf-section-title { margin:30px 0 18px; }
.jcf-section-title span { color:var(--jcf-coral); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.jcf-section-title h3 { margin:5px 0 0; color:var(--jcf-navy); font-size:20px; }
.jcf-guide { margin:-8px 0 24px; border:1px solid #dce5e0; border-radius:10px; background:#f8fbf9; }
.jcf-guide summary { padding:13px 15px; cursor:pointer; color:#315c59; font-size:12px; font-weight:800; }
.jcf-guide>div { padding:0 16px 14px; color:var(--jcf-muted); font-size:12px; line-height:1.55; }
.jcf-guide ol { margin:9px 0; padding-left:18px; }
.jcf-guide a { color:var(--jcf-coral); font-weight:800; text-decoration:underline; }
.jcf-timing { margin:25px 0 0; padding:0; border:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.jcf-timing legend { grid-column:1/-1; margin-bottom:8px; color:#45615f; font-size:12px; font-weight:800; }
.jcf-timing>label { padding:14px; display:flex; gap:10px; border:1px solid #dce5e0; border-radius:10px; }
.jcf-timing>label strong,.jcf-timing>label small { display:block; }
.jcf-timing>label small { margin-top:4px; color:var(--jcf-muted); font-size:10px; line-height:1.45; }
.jcf-timing>label:has(input:checked) { border-color:var(--jcf-coral); background:#fff8f5; }
.jcf-timing-date { grid-column:1/-1; padding:18px; display:grid; grid-template-columns:minmax(230px,1fr) 1.5fr; gap:20px; align-items:end; border-radius:10px; background:#e7f2ed; }
.jcf-timing-date[hidden] { display:none; }
.jcf-timing-date .jcf-field { width:100%; min-width:0; }
.jcf-timing-inputs { display:grid; grid-template-columns:1fr; gap:12px; }
.jcf-timing-date.is-range .jcf-timing-inputs { grid-template-columns:repeat(2,minmax(0,1fr)); }
.jcf-timing-inputs>[data-jcf-range-end][hidden] { display:none; }
.jcf-timing-date input[data-jcf-date] { display:block!important; width:100%!important; min-width:0!important; height:48px!important; min-height:48px!important; padding:13px 15px!important; }
.jcf-date-control { position:relative; width:100%; }
.jcf-date-control>input[data-jcf-date] { padding-right:54px!important; }
.jcf-date-button { position:absolute; z-index:2; top:4px; right:4px; width:40px; height:40px; display:grid; place-items:center; border:0; border-radius:7px; background:#e4f0eb; color:var(--jcf-navy); font-size:21px; line-height:1; cursor:pointer; }
.jcf-date-button:hover,.jcf-date-button:focus { background:var(--jcf-mint); outline:2px solid #ef6b5138; }
.jcf-native-date { position:absolute!important; right:7px!important; bottom:4px!important; width:1px!important; min-width:1px!important; height:1px!important; min-height:1px!important; padding:0!important; border:0!important; opacity:0!important; pointer-events:none!important; }
.jcf-timing-date p { margin:0 0 10px; color:#4f6c68; font-size:11px; line-height:1.5; }
.jcf-options { margin:0 0 28px; padding:0; border:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.jcf-options legend,.jcf-payment legend { grid-column:1/-1; margin-bottom:12px; color:#45615f; font-size:12px; font-weight:800; }
.jcf-options label { padding:14px; display:flex; align-items:center; gap:9px; border:1px solid #dce4df; border-radius:9px; font-size:12px; }
.jcf-declarations label { grid-column:1/-1; background:#f8fbf9; }
.jcf-payment { margin:26px 0; display:grid; grid-template-columns:1fr 1fr; overflow:hidden; border:1px solid #dce4df; border-radius:14px; }
.jcf-payment>div { padding:26px; background:#e3f0ea; }
.jcf-payment small,.jcf-payment strong,.jcf-payment span { display:block; }
.jcf-payment strong { margin:8px 0; font-family:Georgia,serif; font-size:24px; }
.jcf-payment span { color:var(--jcf-muted); font-size:11px; }
.jcf-amount-fields { margin:20px 0 14px; display:grid; grid-template-columns:minmax(112px,.7fr) 1.3fr; gap:12px; }
.jcf-agreed-amount .jcf-field>span { color:#45615f; }
.jcf-agreed-amount .jcf-field input,.jcf-agreed-amount .jcf-field select { background:#fff; }
.jcf-agreed-amount input[type="number"] { display:block!important; width:100%!important; max-width:none!important; height:48px!important; min-height:48px!important; }
.jcf-payment fieldset { margin:0; padding:24px; border:0; }
.jcf-payment label { display:block; margin:0 0 12px; font-size:12px; }
.jcf-bank-note { padding:16px; display:flex; gap:13px; border-radius:10px; background:#fff5ef; color:#546b68; font-size:12px; line-height:1.55; }
.jcf-bank-note p { margin:0; }
.jcf-version { margin-bottom:18px; padding:16px 18px; display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid #dce5e0; border-radius:10px; background:#f8fbf9; }
.jcf-version strong,.jcf-version span { display:block; }
.jcf-version span { margin-top:4px; color:var(--jcf-muted); font-size:10px; }
.jcf-version a { flex:0 0 auto; color:var(--jcf-coral); font-size:11px; font-weight:800; }
.jcf-ack-list { display:grid; gap:10px; }
.jcf-ack-list label { padding:14px; display:flex; gap:12px; border:1px solid #dce5e0; border-radius:10px; font-size:12px; line-height:1.5; }
.jcf-ack-list label:has(input:checked) { border-color:#8ebcaf; background:#f1f8f5; }
.jcf-ack-list span { display:flex; gap:10px; }
.jcf-ack-list b { width:22px; height:22px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:#e2eee9; }
.jcf-terms { margin:24px 0; border:1px solid #dce5e0; border-radius:12px; }
.jcf-terms summary { padding:18px; display:flex; justify-content:space-between; cursor:pointer; font-weight:800; list-style:none; }
.jcf-terms summary::-webkit-details-marker { display:none; }
.jcf-terms[open] summary span { transform:rotate(45deg); }
.jcf-terms>div { max-height:520px; padding:0 24px 22px; overflow:auto; }
.jcf-agreement { margin:14px 0; padding:16px; border-radius:10px; background:#e5f1ec; color:var(--jcf-navy); font-weight:800; }
.jcf-agreement a { color:var(--jcf-coral); text-decoration:underline; }
.jcf-legal-note,.jcf-save-note { color:var(--jcf-muted); font-size:10px; line-height:1.5; }
.jcf-actions { margin-top:35px; padding-top:22px; display:flex; align-items:center; justify-content:space-between; border-top:1px solid #e4e9e6; }
.jcf-actions [hidden] { display:none!important; }
.jcf-review-summary { margin:0 0 26px; padding:20px; border:1px solid #dbe7e1; border-radius:14px; background:#f5faf7; }
.jcf-review-summary h3 { margin:0 0 14px; color:var(--jcf-navy); font-size:18px; }
.jcf-review-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.jcf-review-card { min-width:0; padding:13px 15px; border:1px solid #e1eae5; border-radius:10px; background:#fff; }
.jcf-review-card h4 { margin:0 0 8px; color:#58716e; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.jcf-review-card p { margin:4px 0; color:var(--jcf-navy); font-size:13px; line-height:1.45; overflow-wrap:anywhere; }
.jcf-review-card strong { font-weight:800; }
.jcf-button { min-width:135px; padding:14px 18px; display:inline-block; border:0; border-radius:9px; background:var(--jcf-coral); color:#fff!important; font-weight:800; text-align:center; cursor:pointer; }
.jcf-button:disabled { opacity:.65; cursor:wait; }
.jcf-button.jcf-ghost { border:1px solid #cfdad5; background:#fff; color:var(--jcf-navy)!important; }
.jcf-alert { margin:24px 0 0; padding:14px; border-left:4px solid var(--jcf-coral); border-radius:8px; background:#fff5ef; color:#774236; }
.jcf-inline-error { margin:28px 0 -8px; padding:16px 18px; display:grid; gap:5px; border:2px solid #ef4444; border-left-width:6px; border-radius:12px; background:#fff1f2; color:#7f1d1d; font-size:14px; line-height:1.45; }
.jcf-inline-error[hidden] { display:none!important; }
.jcf-inline-error strong { display:block; color:#991b1b; font-size:15px; }
.jcf-invalid { border-color:#ef4444!important; background:#fff7f7!important; box-shadow:0 0 0 3px rgba(239,68,68,.12)!important; }
.jcf-field.jcf-invalid input,.jcf-field.jcf-invalid select,.jcf-field.jcf-invalid textarea,.jcf-invalid>.jcf-field input,.jcf-invalid>.jcf-field select,.jcf-invalid>.jcf-field textarea { border-color:#ef4444!important; box-shadow:0 0 0 3px rgba(239,68,68,.12)!important; }
.jcf-field-error { display:block!important; margin-top:8px!important; color:#991b1b!important; font-size:12px!important; font-weight:800!important; line-height:1.35!important; }
.jcf-hp { position:absolute!important; left:-9999px!important; opacity:0!important; }
.jcf-success { width:min(760px,92vw); margin:70px auto; padding:70px; border-radius:20px; background:#fff; box-shadow:0 24px 70px #143a3420; text-align:center; }
.jcf-success>span { width:68px; height:68px; margin:0 auto 24px; display:grid; place-items:center; border-radius:50%; background:var(--jcf-mint); font-size:30px; }
.jcf-success h1 { font-family:Georgia,serif; font-size:clamp(36px,5vw,56px); }
.jcf-success p { color:var(--jcf-muted); line-height:1.7; }

.jcf-legal-document { --jcf-navy:#0d3435; --jcf-coral:#ef6b51; --jcf-muted:#58716e; width:min(900px,92vw); margin:40px auto; padding:clamp(28px,6vw,72px); border-radius:18px; background:#fff; color:var(--jcf-navy); box-shadow:0 20px 60px #153a3420; font-family:Arial,sans-serif; }
.jcf-legal-title { padding-bottom:34px; border-bottom:2px solid var(--jcf-navy); }
.jcf-legal-title h1 { margin:10px 0; font-family:Georgia,serif; font-size:clamp(38px,6vw,64px); line-height:1; letter-spacing:-.04em; }
.jcf-legal-title>span { color:var(--jcf-muted); font-size:12px; font-weight:800; }
.jcf-legal-title>p:last-of-type { max-width:720px; margin:24px 0 0; color:var(--jcf-muted); line-height:1.7; }
.jcf-download { margin-top:20px; padding:11px 14px; display:inline-block; border-radius:8px; background:var(--jcf-coral); color:#fff!important; font-size:12px; font-weight:800; text-decoration:none!important; }
.jcf-legal-document section { padding:30px 0 18px; border-bottom:1px solid #e5ebe8; }
.jcf-legal-document h2 { margin:0 0 18px; color:var(--jcf-navy); font-family:Georgia,serif; font-size:25px; }
.jcf-legal-document ol { margin:0; padding:0; list-style:none; }
.jcf-legal-document li { margin-bottom:14px; color:#4f6764; font-size:14px; line-height:1.65; }
.jcf-legal-document ol li { display:grid; grid-template-columns:46px 1fr; gap:10px; }
.jcf-legal-document li b { color:var(--jcf-coral); }
.jcf-legal-document p { color:#4f6764; line-height:1.7; }
.jcf-legal-document ul { color:#4f6764; line-height:1.7; }
.jcf-legal-document a { color:var(--jcf-coral); font-weight:800; }
.jcf-legal-document footer { padding-top:34px; color:var(--jcf-muted); font-size:13px; line-height:1.7; }
.jcf-legal-document footer strong,.jcf-legal-document footer span { display:block; }
.jcf-terms .jcf-legal-document { width:100%; margin:0; padding:18px 0; border-radius:0; box-shadow:none; }
.jcf-terms .jcf-legal-title h1 { font-size:28px; }

@media (max-width:900px) {
  .jcf-shell { grid-template-columns:1fr; }
  .jcf-sidebar { padding:35px; }
  .jcf-sidebar ol { margin-top:28px; display:grid; grid-template-columns:repeat(5,1fr); gap:8px; }
  .jcf-sidebar li { min-height:0; padding:44px 0 0; justify-content:center; font-size:10px; text-align:center; }
  .jcf-sidebar li::before { display:none; }
  .jcf-sidebar li i { left:50%; top:0; transform:translateX(-50%); }
}
@media (max-width:640px) {
  .jcf-page { padding:0; }
  .jcf-shell { width:100%; margin:0; border-radius:0; }
  .jcf-sidebar { padding:28px 22px; }
  .jcf-sidebar h1 { font-size:42px; }
  .jcf-promise { margin-bottom:20px; }
  .jcf-sidebar ol { overflow:auto; }
  .jcf-form-wrap { padding:28px 20px 35px; }
  .jcf-review-grid { grid-template-columns:1fr; }
  .jcf-progress { grid-template-columns:1fr auto; }
  .jcf-progress>div { grid-column:1/-1; grid-row:2; }
  .jcf-grid,.jcf-options,.jcf-payment,.jcf-timing,.jcf-timing-date,.jcf-timing-date.is-range .jcf-timing-inputs { grid-template-columns:1fr; }
  .jcf-amount-fields { grid-template-columns:1fr; }
  .jcf-field.jcf-wide,.jcf-check.jcf-wide,.jcf-options legend,.jcf-timing legend,.jcf-timing-date { grid-column:1; }
  .jcf-step-heading>span { width:44px; height:44px; }
  .jcf-version { align-items:flex-start; flex-direction:column; }
  .jcf-payment>div,.jcf-payment fieldset { padding:20px; }
  .jcf-success { margin:20px auto; padding:35px 22px; }
  .jcf-legal-document { width:100%; margin:0; border-radius:0; box-shadow:none; }
  .jcf-legal-document ol li { grid-template-columns:38px 1fr; }
}
.jcf-delivery-status{margin-bottom:24px}
.jcf-pending-destination{padding:24px;border-radius:18px;background:#e7f2ee;margin:18px 0 24px}
.jcf-pending-destination>p{margin:-6px 0 18px;color:#58716f;line-height:1.6}
