/* One fleet calculator, using the landing page design tokens and buttons. */
.pricing-section { box-sizing: border-box; width: 100%; border-top: 1px solid #eceefa; padding: 80px 24px; background: #fafbff; color: #070e2c; font-family: "Plus Jakarta Sans:Regular", sans-serif; scroll-margin-top: 80px; }
.pricing-inner { max-width: 680px; margin: 0 auto; }
.pricing-heading { text-align: center; margin-bottom: 36px; }
.pricing-heading > img { margin: 0 auto 24px; }
.pricing-heading h2 { font-family: "Plus Jakarta Sans:Bold", sans-serif; font-size: 36px; line-height: 1.2; letter-spacing: -.03em; margin: 0 0 16px; }
.pricing-heading p { font-size: 16px; line-height: 1.6; color: #474a5c; }
.pricing-section [hidden] { display: none; }
.pricing-count { display: flex; align-items: baseline; justify-content: center; gap: 12px; margin-bottom: 12px; }
.pricing-count input { width: 3.2ch; padding: 0; background: transparent; border: 0; border-bottom: 2px solid transparent; font-family: "Plus Jakarta Sans:Bold", sans-serif; font-size: 72px; line-height: 1.2; color: #2847c7; text-align: center; appearance: textfield; -moz-appearance: textfield; }
.pricing-count input::-webkit-inner-spin-button, .pricing-count input::-webkit-outer-spin-button { -webkit-appearance: none; }
.pricing-count label { font-size: 20px; color: #474a5c; }
.pricing-slider { display: block; width: 100%; height: 28px; cursor: pointer; accent-color: #2847c7; margin: 0; }
.pricing-presets { position: relative; height: 34px; margin: 0 11px; }
.pricing-presets button { position: absolute; left: calc(var(--preset-position, 0) * 100%); transform: translateX(-50%); border: 0; background: transparent; color: #626984; font: inherit; font-size: 12px; padding: 8px; cursor: pointer; }
.pricing-presets button[aria-pressed="true"] { color: #2847c7; font-family: "Plus Jakarta Sans:Bold", sans-serif; }
.pricing-periods { display: flex; justify-content: center; gap: 4px; padding: 4px; border-radius: 12px; background: #eceefa; width: fit-content; max-width: 100%; margin: 28px auto; }
.pricing-periods button { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; padding: 12px 16px; border: 0; border-radius: 8px; background: transparent; color: #474a5c; cursor: pointer; font: inherit; font-size: 14px; }
.pricing-periods button[aria-pressed="true"] { color: #070e2c; background: #fff; box-shadow: 0 2px 6px #070e2c0a; }
.pricing-periods small { color: #267b13; background: #e8f6e4; padding: 2px 5px; border-radius: 4px; font-size: 11px; }
.pricing-card { padding: 36px; border: 1px solid #eceefa; border-radius: 20px; background: #fff; box-shadow: 0 12px 32px #070e2c0d; }
.pricing-card-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 24px; }
.pricing-badge { padding: 6px 12px; color: #2847c7; background: #eceefa; border-radius: 6px; font-size: 13px; }
.pricing-saving { font-size: 12px; line-height: 1.5; color: #267b13; border: 1px solid rgb(63 175 32 / .25); background: rgb(63 175 32 / .1); padding: 4px 8px; border-radius: 4px; }
.pricing-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
.pricing-price strong { font-family: "Plus Jakarta Sans:Bold", sans-serif; font-size: 56px; line-height: 1.2; letter-spacing: -.04em; }
.pricing-price span { color: #626984; font-size: 15px; }
.pricing-per-driver { color: #2847c7; font-size: 17px; margin: 0 0 20px; }
.pricing-payment { font-size: 13px; line-height: 1.7; color: #474a5c; margin: 0 0 24px; }
.pricing-breakdown { padding: 14px 16px; border-radius: 10px; background: #fafbff; font-size: 13px; line-height: 1.7; margin-bottom: 16px; color: #474a5c; }
.pricing-features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; list-style: none; margin: 0 0 28px; padding: 0; }
.pricing-features li { display: flex; gap: 8px; color: #474a5c; font-size: 14px; line-height: 1.5; }
.pricing-features li::before { content: ''; flex: 0 0 16px; width: 16px; height: 16px; margin-top: 2px; border-radius: 3px; background: url('/_assets/campaign/check.svg') center / 16px 16px no-repeat; }
.pricing-card .et-button { display: flex; justify-content: center; width: 100%; padding: 16px; font-family: "Plus Jakarta Sans:SemiBold", sans-serif; font-size: 16px; }
.pricing-card-note, .pricing-footnote { text-align: center; font-size: 13px; line-height: 1.7; color: #626984; margin: 12px 0 0; }
.pricing-footnote { margin-top: 24px; }
.pricing-footnote button { font: inherit; color: #2847c7; cursor: pointer; background: none; border: 0; text-decoration: underline; padding: 0; }
.pricing-section :is(button,input):focus-visible { outline: 2px solid #2847c7; outline-offset: 4px; }
@media (max-width: 799px) {
 .pricing-section { padding: 48px 20px; }
 .pricing-heading h2 { font-size: 28px; }
 .pricing-count input { font-size: 60px; }
 .pricing-card { padding: 24px; }
 .pricing-features { grid-template-columns: minmax(0,1fr); }
 .pricing-price strong { font-size: 44px; }
 .pricing-periods { width: 100%; }
 .pricing-periods button { flex: 1; padding: 10px 6px; font-size: 12px; }
}
.pricing-heading h2, .pricing-count input { font-weight: 700; }
.pricing-slider { appearance: none; -webkit-appearance: none; height: 6px; border-radius: 3px; background: linear-gradient(to right, #2847c7 var(--slider-fill, 33.333%), #dfe3f2 var(--slider-fill, 33.333%)); margin: 16px 0 8px; }
.pricing-slider::-webkit-slider-thumb { appearance: none; -webkit-appearance: none; width: 22px; height: 22px; border: 3px solid #fff; border-radius: 50%; background: #2847c7; box-shadow: 0 1px 4px #2847c740; }
.pricing-slider::-moz-range-thumb { width: 16px; height: 16px; border: 3px solid #fff; border-radius: 50%; background: #2847c7; box-shadow: 0 1px 4px #2847c740; }
/* Keep a 44px touch target around the visually thin slider. */
.pricing-slider { height: 44px; background-size: 100% 6px; background-position: center; background-repeat: no-repeat; margin: 0; }
.pricing-price { color: #070e2c; }

.pricing-count-box{max-width:340px;margin:0 auto 18px;padding:18px 20px 12px;border:1px solid #d9dff5;border-radius:16px;background:#fff;text-align:center}
.pricing-count-hint{display:block;margin-bottom:4px;font-size:13px;font-weight:600;color:#474a5c}
.pricing-count-box .pricing-count{margin-bottom:0}
.pricing-count-box .pricing-count input{border-bottom:2px solid #d9dff5}
.pricing-count-box .pricing-count input:focus-visible{border-bottom-color:#2847c7}
.pricing-count-unit{font-size:20px;color:#474a5c}
@media(max-width:599px){.pricing-count-box .pricing-count input{font-size:48px}}

.pricing-count-box .pricing-count input{width:4.6ch}
.pricing-count-box .pricing-price-note{display:none}


/* 27.09.2026 — pole liczby kierowcow: wyglada jak pole do wpisania, mniejsze cyfry */
.pricing-count-box{max-width:400px;padding:18px 22px 16px;border-radius:18px;box-shadow:0 6px 24px #070e2c0a}
.pricing-count-hint{margin-bottom:10px;font-size:12px;font-weight:600;color:#626984}
.pricing-count-box .pricing-count{gap:10px;align-items:center;padding:8px 14px;border:1.5px solid #d9dff5;border-radius:12px;background:#f7f8fc;transition:border-color 140ms ease-out,background-color 140ms ease-out,box-shadow 140ms ease-out}
.pricing-count-box .pricing-count:hover{border-color:#b9c4ea;background:#fff}
.pricing-count-box .pricing-count:focus-within{border-color:#2847c7;background:#fff;box-shadow:0 0 0 4px #2847c71f}
.pricing-count-box .pricing-count input{font-size:38px;line-height:1.15;width:3.6ch;border-bottom:0;cursor:text;caret-color:#2847c7}
.pricing-count-box .pricing-count input:focus-visible{outline:none;border-bottom-color:transparent}
.pricing-count-unit{font-size:15px;color:#626984}
/* skala pod suwakiem: mniejsza i spokojniejsza */
.pricing-presets button{font-size:11px;color:#8b92ad;padding:8px 5px}
.pricing-presets button:hover{color:#2847c7}
@media(max-width:599px){
  .pricing-count-box .pricing-count input{font-size:32px}
  .pricing-presets button{font-size:10px;padding:8px 3px}
}

.pricing-audiences{display:flex;gap:6px;padding:5px;background:#e9edfa;border-radius:12px;margin-bottom:24px}
.pricing-audiences button{flex:1;min-height:48px;border:0;border-radius:8px;background:transparent;color:#474a5c;font:inherit;font-size:14px;padding:10px;font-weight:600}
.pricing-audiences button[aria-pressed="true"]{background:white;color:#2448bb;box-shadow:0 2px 8px #070e2c0a}
@media(max-width:599px){.pricing-presets button{font-size:10px;padding-inline:2px;min-width:28px}.pricing-audiences button{font-size:12px}.pricing-count-box .pricing-count input{width:4.6ch}}
