html:has(.buyout-page) { scroll-behavior: auto !important; }
.buyout-term-limit { margin-top: 15px; padding: 14px 16px; border: 1px solid #e1e5e9; border-radius: 10px; background: #f6f7f9; }
.buyout-term-limit strong { display: block; color: #20252b; font-size: 14px; }
.buyout-term-limit p { margin: 6px 0 0; color: #626b76; font-size: 12px; line-height: 1.5; }
.buyout-term-limit.is-at-limit { background: #fff8d6; border-color: #e0c44f; }
.buyout-term-adjustment { margin: 10px 0 0; color: #6f5712; font-size: 12px; line-height: 1.5; }
.buyout-range:disabled { cursor: default; }
.buyout-comparison { margin: 24px 0; padding: 20px; background: #fffdf3; color: #20252b; border: 1px solid #f3df91; border-radius: 12px; }
.buyout-comparison h4 { color: #20252b; font-size: 20px; line-height: 1.25; margin: 0 0 8px; font-weight: 700; }
.buyout-comparison-period { color: #626b76; font-size: 11px; margin: 0 0 18px; }
.buyout-comparison-totals { margin: 0; font-size: 13px; }
.buyout-comparison-totals > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: start; padding: 12px 0; border-top: 1px solid #e9e2c9; }
.buyout-comparison-totals dt { font-weight: 600; }
.buyout-comparison-totals dt small { display: block; margin-top: 4px; font-size: 11px; line-height: 1.45; font-weight: 400; color: #626b76; }
.buyout-comparison-totals dd { margin: 0; font-weight: 700; white-space: nowrap; }
.buyout-comparison-difference { margin-top: 12px; padding: 16px; background: #ffed9e; border-radius: 9px; }
.buyout-comparison-difference > span { display: block; font-size: 13px; font-weight: 600; line-height: 1.45; }
.buyout-comparison-difference > strong { display: block; font-size: clamp(24px, 2.3vw, 30px); letter-spacing: -.6px; line-height: 1.3; margin-top: 7px; overflow-wrap: anywhere; }
.buyout-comparison-difference > small { display: block; font-size: 11px; line-height: 1.5; margin-top: 7px; }
.buyout-comparison-basis { margin: 14px 0 0; color: #626b76; font-size: 11px; line-height: 1.6; }
.buyout-comparison-expenses { margin: 14px 0 0; padding-top: 13px; border-top: 1px solid #e9e2c9; color: #49515a; font-size: 12px; line-height: 1.55; }
@media (max-width: 1199px) and (min-width: 768px), (max-width: 389px) {
  .buyout-comparison { padding: 15px; }
  .buyout-comparison-totals > div { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .buyout-comparison-totals dd { font-size: 16px; }
}
.buyout-page {
  --bo-ink: #20252b;
  --bo-muted: #626b76;
  --bo-yellow: #ffde40;
  --bo-border: #e1e5e9;
  color: var(--bo-ink);
  background: #f5f6f8;
  padding: 28px max(24px, calc((100% - 1200px) / 2)) 76px;
  font-size: 16px;
  line-height: 1.55;
}
.buyout-page *, .buyout-page *::before, .buyout-page *::after { box-sizing: border-box; }
.buyout-page [hidden] { display: none !important; }
.buyout-page h1, .buyout-page h2, .buyout-page h3 { color: var(--bo-ink); font-weight: 700; }
.buyout-page h2 { font-size: 30px; letter-spacing: -.75px; line-height: 1.2; margin: 0; }
.buyout-page button, .buyout-page input { font: inherit; }
.buyout-page button { cursor: pointer; }
.buyout-page button:disabled { cursor: wait; opacity: .6; }
.buyout-page a { text-underline-offset: 4px; }
.buyout-page :is(button, a, input, summary):focus-visible { outline: 3px solid #2879ea; outline-offset: 4px; }
.buyout-page :is(section, aside) { scroll-margin-top: 108px; }
.buyout-preview { display: flex; align-items: center; gap: 8px; color: #6f5b17; font-size: 12px; margin-bottom: 34px; }
.preview-dot { width: 6px; height: 6px; border-radius: 50%; background: #bc9523; flex-shrink: 0; }
.buyout-hero { display: grid; grid-template-columns: 1fr 270px; align-items: center; gap: 48px; margin: 0 0 44px; }
.buyout-eyebrow { color: var(--bo-muted); font-size: 11px; font-weight: 700; letter-spacing: 1.7px; margin: 0 0 13px; }
.buyout-hero h1 { font-size: clamp(36px, 3.6vw, 52px); line-height: 1.12; letter-spacing: -1.7px; margin: 0 0 22px; }
.buyout-hero h1 span { color: #6a7078; }
.buyout-lead { max-width: 580px; color: var(--bo-muted); margin: 0; font-size: 18px; }
.buyout-hero-aside { border-left: 1px solid #dce0e5; padding-left: 32px; }
.buyout-hero-icon { display: inline-flex; align-items: center; justify-content: center; background: #fff0a5; border-radius: 15px; width: 52px; height: 52px; margin-bottom: 15px; }
.buyout-hero-icon svg { width: 29px; height: 29px; }
.buyout-hero-aside p { margin: 0 0 14px; color: var(--bo-muted); font-size: 17px; }
.buyout-hero-aside strong { color: var(--bo-ink); }
.buyout-hero-aside a { color: var(--bo-ink); font-size: 14px; font-weight: 600; }
.buyout-hero-aside a span { margin-left: 8px; }
.buyout-calculator { padding: 36px; background: #fff; border: 1px solid var(--bo-border); border-radius: 24px; box-shadow: 0 8px 40px #20252b04; }
.buyout-calculator-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 30px; margin-bottom: 30px; border-bottom: 1px solid #edf0f3; }
.buyout-calculator-heading .buyout-eyebrow { margin-bottom: 9px; }
.buyout-settings { border: 1px solid #e4e6e9; background: #fafbfc; border-radius: 11px; margin: -7px 0 28px; }
.buyout-settings > summary { list-style: none; display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; cursor: pointer; padding: 15px 18px; color: #424b57; font-size: 14px; font-weight: 600; }
.buyout-settings > summary::-webkit-details-marker { display: none; }
.buyout-settings > summary::before { content: '+'; font-size: 20px; line-height: 1; color: #697481; font-weight: 400; }
.buyout-settings[open] > summary::before { content: '−'; }
.buyout-settings > summary small { font-size: 11px; font-weight: 400; color: #727d89; }
.buyout-settings form { padding: 6px 18px 18px; }
.buyout-settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.buyout-settings-rate > label, .buyout-settings-tariffs > p { font-size: 13px; font-weight: 600; color: #424b57; margin: 0 0 9px; display: block; }
.buyout-settings-input { display: flex; align-items: center; gap: 12px; border: 1px solid #cbd1d8; border-radius: 8px; background: #fff; padding: 8px 12px; min-height: 46px; }
.buyout-settings-input input { border: 0; background: transparent; color: #20252b; width: 100%; min-width: 0; padding: 0; font-size: 18px; font-weight: 600; outline: 0 !important; appearance: textfield; -moz-appearance: textfield; }
.buyout-settings-input input::-webkit-inner-spin-button { display: none; }
.buyout-settings-input:focus-within { border-color: #626b76; box-shadow: 0 0 0 2px #f5e399; }
.buyout-settings-input span { color: #727d89; font-size: 11px; white-space: nowrap; }
.buyout-settings-rate > p { color: #727d89; font-size: 12px; line-height: 1.6; margin: 12px 0 0; }
.buyout-settings-tariffs { display: grid; grid-template-columns: 1fr 160px; align-items: center; gap: 10px 18px; }
.buyout-settings-tariffs > p { grid-column: 1 / -1; margin-bottom: 0; }
.buyout-settings-tariffs > label { font-size: 12px; color: #626b76; }
.buyout-settings-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; margin-top: 22px; }
.buyout-settings-actions .buyout-primary { width: auto; min-height: 44px; font-size: 13px !important; }
.buyout-settings-actions > button:last-child { background: transparent; border: 0; padding: 10px 0; font-size: 12px; color: #626b76; text-decoration: underline; text-underline-offset: 4px; }
.buyout-settings-feedback { font-size: 12px; color: #2c6e50; background: #eaf5ee; padding: 11px 13px; border-radius: 8px; margin: 14px 0 0; }
.buyout-settings-feedback.is-error { color: #963a30; background: #fff0ed; }
.buyout-settings-hint { font-size: 10px; color: #727d89; margin: 12px 0 0; }
.buyout-auto-note { display: flex; align-items: center; gap: 7px; color: var(--bo-muted); font-size: 12px; white-space: nowrap; }
.buyout-auto-note > span { font-size: 20px; color: #318565; }
.buyout-calculator-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); align-items: start; gap: 40px; }
.buyout-options { min-width: 0; }
.buyout-fieldset { min-width: 0; padding: 0 0 29px; margin: 0 0 28px; border: 0; border-bottom: 1px solid #edf0f3; }
.buyout-fieldset-last { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.buyout-fieldset legend { display: flex; align-items: center; gap: 13px; float: none; width: auto; font-size: 17px; font-weight: 700; margin-bottom: 18px; }
.buyout-step { color: #818a96; font-size: 11px; font-weight: 600; border: 1px solid var(--bo-border); border-radius: 50%; width: 28px; height: 28px; display: inline-flex; justify-content: center; align-items: center; flex-shrink: 0; }
.buyout-car { display: flex; align-items: center; gap: 20px; }
.buyout-car img { flex-shrink: 0; width: 152px; height: 116px; border-radius: 12px; object-fit: cover; background: #f2f3f5; }
.buyout-car-tag { color: #826b20; background: #fff8d9; font-size: 10px; font-weight: 600; padding: 3px 7px; border-radius: 5px; display: inline-block; margin-bottom: 5px; }
.buyout-car h3 { font-size: 23px; letter-spacing: -.5px; margin: 0 0 6px; }
.buyout-car p { font-size: 12px; color: var(--bo-muted); margin: 0 0 7px; }
.buyout-car p strong { display: block; color: var(--bo-ink); font-size: 17px; }
.buyout-car small { display: block; font-size: 10px; line-height: 1.5; color: var(--bo-muted); }
.buyout-money-field { border: 1px solid #cbd1d8; border-radius: 10px; padding: 11px 17px 10px; }
.buyout-money-field:focus-within { border-color: #626b76; box-shadow: 0 0 0 2px #f5e399; }
.buyout-money-field > label { display: block; font-size: 11px; color: var(--bo-muted); margin-bottom: 2px; }
.buyout-money-field > div { display: flex; align-items: center; gap: 10px; }
.buyout-money-field input { padding: 0; border: 0; background: transparent; outline: 0 !important; width: 100%; min-width: 0; font-size: 25px; font-weight: 700; letter-spacing: -.5px; color: var(--bo-ink); }
.buyout-money-field input::-webkit-inner-spin-button { display: none; }
.buyout-money-field input { appearance: textfield; -moz-appearance: textfield; }
.buyout-money-field span { font-size: 23px; color: var(--bo-muted); }
.buyout-range { display: block; width: 100%; height: 26px; accent-color: #d6b523; margin: 10px 0 0; cursor: pointer; }
.buyout-range-limits { display: flex; justify-content: space-between; font-size: 10px; color: var(--bo-muted); margin-bottom: 13px; }
.buyout-quick { display: flex; flex-wrap: wrap; gap: 7px; }
.buyout-quick button { border: 1px solid transparent; background: #f3f4f6; border-radius: 8px; padding: 8px 11px; min-height: 40px; font-size: 12px; font-weight: 500; color: #56606b; }
.buyout-quick button:hover { border-color: #cbd1d8; }
.buyout-quick button.is-selected { background: #fff6c4; color: #574716; border-color: #e0c44f; }
.buyout-hint { color: var(--bo-muted); font-size: 12px; line-height: 1.5; margin: 12px 0 0; }
.buyout-segments { display: grid; gap: 8px; }
.buyout-terms { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.buyout-schedules { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.buyout-segments label, .buyout-tariff { position: relative; cursor: pointer; margin: 0; min-width: 0; }
.buyout-segments input, .buyout-tariff input { position: absolute; left: 0; top: 0; opacity: 0; width: 1px; height: 1px; }
.buyout-segments label > span { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 66px; border: 1px solid var(--bo-border); border-radius: 9px; font-size: 21px; font-weight: 700; line-height: 1.3; }
.buyout-segments small { color: var(--bo-muted); font-size: 10px; font-weight: 400; margin-top: 3px; }
.buyout-segments input:checked + span { background: #fff8d6; border-color: #e0c44f; box-shadow: inset 0 0 0 1px #e0c44f; }
.buyout-segments input:focus-visible + span, .buyout-tariff input:focus-visible + span { outline: 3px solid #2879ea; outline-offset: 3px; }
.buyout-start-date { margin-top: 15px; }
.buyout-start-date summary { color: var(--bo-muted); font-size: 12px; cursor: pointer; padding: 6px 0; width: fit-content; }
.buyout-start-date > label { display: block; font-size: 12px; margin-top: 10px; }
.buyout-start-date input { max-width: 100%; padding: 10px 14px; min-height: 44px; border: 1px solid #cbd1d8; border-radius: 8px; background: #fff; color: var(--bo-ink); margin-top: 7px; }
.buyout-start-date .buyout-hint { margin-top: 7px; }
.buyout-calendar-note { display: flex; align-items: flex-start; gap: 10px; border-radius: 9px; background: #f5f6f8; padding: 11px 13px; margin-top: 14px; font-size: 12px; color: #5a6471; }
.buyout-calendar-note > span:first-child { font-size: 18px; line-height: 1.1; }
.buyout-tariffs { display: grid; gap: 10px; }
.buyout-tariff-card { display: block; position: relative; border: 1px solid var(--bo-border); border-radius: 11px; padding: 15px 42px 15px 16px; }
.buyout-tariff-card:hover { border-color: #bac2cc; }
.buyout-tariff-head { display: flex; align-items: baseline; flex-wrap: wrap; gap: 5px 12px; margin-bottom: 7px; }
.buyout-tariff-head strong { font-size: 15px; }
.buyout-tariff-head > span { font-size: 12px; font-weight: 600; color: #67707c; }
.buyout-tariff-copy { color: var(--bo-muted); font-size: 12px; line-height: 1.5; display: block; }
.buyout-tariff input:checked + span { background: #fffbea; border-color: #e0c44f; box-shadow: inset 0 0 0 1px #e0c44f; }
.buyout-radio-mark { position: absolute; right: 16px; top: 19px; width: 16px; height: 16px; border: 1px solid #c2c9d1; border-radius: 50%; background: #fff; }
.buyout-tariff input:checked + span .buyout-radio-mark { border: 5px solid #20252b; }
.buyout-result { position: sticky; top: 101px; background: var(--bo-ink); color: #fff; border-radius: 17px; padding: 25px 26px 19px; min-width: 0; }
.buyout-result-top { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 9px; margin-bottom: 18px; }
.buyout-result-eyebrow { color: #b9c1cb; font-size: 10px; font-weight: 600; letter-spacing: 1.5px; }
.buyout-result-badge { font-size: 10px; color: #efe0a2; background: #ffffff0c; border: 1px solid #ffffff20; padding: 4px 7px; border-radius: 5px; }
.buyout-result h3 { color: #fff; font-size: 24px; letter-spacing: -.5px; margin: 0 0 6px; }
.buyout-result-summary { font-size: 11px; color: #bec5cf; margin: 0 0 22px; }
.buyout-result-rate { color: #d4dbe4; font-size: 11px; margin: -12px 0 20px; }
.buyout-payment strong { display: block; color: var(--bo-yellow); font-size: clamp(34px, 3.3vw, 46px); line-height: 1.15; font-weight: 700; letter-spacing: -1.4px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.buyout-payment > span { display: block; font-size: 13px; color: #d0d5dc; margin-top: 6px; }
.buyout-monthly { display: flex; align-items: baseline; flex-wrap: wrap; gap: 5px; color: #b8c0cc; font-size: 11px; margin: 18px 0 15px; }
.buyout-monthly strong { color: #fff; font-size: 14px; font-weight: 600; }
.buyout-payment-parts { display: flex; flex-wrap: wrap; gap: 8px 16px; border-bottom: 1px solid #ffffff1a; padding-bottom: 20px; margin-bottom: 18px; color: #b8c0cc; font-size: 11px; }
.buyout-payment-parts strong { color: #e7ebef; margin-left: 4px; font-weight: 500; }
.buyout-result-details { margin: 0 0 23px; font-size: 12px; }
.buyout-result-details > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; gap: 13px; padding: 6px 0; }
.buyout-result-details dt { color: #b9c1cb; font-weight: 400; }
.buyout-result-details dt small { display: block; color: #b9c1cb; font-size: 9px; margin-top: 3px; }
.buyout-result-details dd { font-weight: 500; text-align: right; margin: 0; }
.buyout-result-details > .buyout-grand-total { padding-top: 15px; margin-top: 8px; border-top: 1px solid #ffffff1a; }
.buyout-result-details > .buyout-grand-total dt { color: #fff; }
.buyout-result-details > .buyout-grand-total dd { font-size: 17px; font-weight: 700; }
.buyout-primary { width: 100%; display: flex; align-items: center; justify-content: center; gap: 15px; background: var(--bo-yellow); color: #20252b; border: 0; border-radius: 9px; font-weight: 700 !important; min-height: 50px; padding: 12px 18px; font-size: 15px !important; }
.buyout-primary:hover { background: #f2d12f; }
.buyout-download { width: 100%; color: #e3e7ec; background: transparent; border: 0; padding: 13px 10px 5px; min-height: 44px; font-size: 12px !important; }
.buyout-download:hover { color: #ffde40; }
.buyout-download span { margin-left: 6px; }
.buyout-result-footnote { font-size: 10px; line-height: 1.6; color: #adb6c2; margin: 13px 0 18px; }
.buyout-result-method { border-top: 1px solid #ffffff1a; padding-top: 12px; }
.buyout-result-method summary { color: #cbd2db; font-size: 11px; cursor: pointer; }
.buyout-result-method p { color: #b9c1cb; font-size: 11px; line-height: 1.65; margin: 12px 0 5px; }
.buyout-result-method strong { color: #fff; font-weight: 500; }
.buyout-result[aria-busy="true"] .buyout-payment { opacity: .5; }
.buyout-error { color: #963a30; background: #fff0ed; padding: 12px 14px; border-radius: 8px; font-size: 13px; margin: 15px 0 0; }
.buyout-included { display: grid; grid-template-columns: 1fr 1.4fr; gap: 50px; padding: 36px; background: #fff; border: 1px solid var(--bo-border); border-radius: 20px; margin-top: 24px; }
.buyout-included h2 { font-size: 27px; }
.buyout-included > div > p { color: var(--bo-muted); font-size: 14px; margin: 12px 0 0; }
.buyout-included ul { list-style: none; padding: 0; margin: 0; }
.buyout-included li { position: relative; padding-left: 25px; margin: 0 0 10px; font-size: 15px; }
.buyout-included li::before { content: '✓'; position: absolute; left: 0; font-weight: 700; color: #318565; }
.buyout-included .buyout-excluded { color: #737c87; font-size: 12px; line-height: 1.6; margin-top: 17px; border-top: 1px solid #edf0f3; padding-top: 14px; }
.buyout-steps { padding: 55px 0; }
.buyout-steps h2 { margin-bottom: 28px; }
.buyout-steps ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; padding: 0; margin: 0; list-style: none; }
.buyout-steps li > span { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 10px; color: #514611; background: #ffed9e; font-weight: 700; font-size: 14px; margin-bottom: 14px; }
.buyout-steps h3 { font-size: 18px; margin: 0 0 8px; }
.buyout-steps p { font-size: 14px; color: var(--bo-muted); margin: 0; }
.buyout-faq { display: grid; grid-template-columns: .85fr 1.4fr; gap: 65px; padding-top: 35px; border-top: 1px solid #dce0e5; }
.buyout-faq details { border-bottom: 1px solid #dce0e5; }
.buyout-faq summary { position: relative; list-style: none; cursor: pointer; padding: 18px 32px 18px 0; font-weight: 600; font-size: 15px; }
.buyout-faq summary::-webkit-details-marker { display: none; }
.buyout-faq summary::after { content: '+'; position: absolute; right: 4px; top: 15px; font-size: 24px; font-weight: 400; color: #737c87; }
.buyout-faq details[open] summary::after { content: '−'; }
.buyout-faq details p { margin: 0 0 20px; color: var(--bo-muted); font-size: 14px; line-height: 1.65; }
.buyout-mobile-summary { display: none; }
body:has(.buyout-page) .mobile-call-bar { display: none !important; }
.buyout-dialog { color: var(--bo-ink); width: calc(100% - 32px); max-width: 580px; max-height: 88dvh; overflow-y: auto; padding: 32px; border: 0; border-radius: 18px; box-shadow: 0 20px 100px #0004; }
.buyout-dialog::backdrop { background: #141b24a8; }
.buyout-dialog h2 { font-size: 29px; margin: 0 0 18px; }
.buyout-dialog-close { position: absolute; right: 12px; top: 10px; width: 44px; height: 44px; border: 0; background: transparent; color: var(--bo-muted); font-size: 29px !important; line-height: 1; border-radius: 8px; }
.buyout-dialog-close:hover { background: #f2f4f6; }
.buyout-dialog .buyout-eyebrow { margin-right: 28px; }
.buyout-application-summary { font-size: 14px; color: var(--bo-ink); padding: 15px; background: #f5f6f8; border-radius: 9px; white-space: pre-line; }
.buyout-test-note { color: #756023; font-size: 12px; margin: 0 0 22px; }
.buyout-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.buyout-contact-grid label { color: var(--bo-muted); font-size: 12px; }
.buyout-contact-grid input { display: block; width: 100%; border: 1px solid #cbd1d8; border-radius: 8px; min-height: 44px; padding: 10px 12px; font-size: 16px; color: var(--bo-ink); margin-top: 5px; }
.buyout-contact-full { grid-column: 1 / -1; }
.buyout-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 11px; color: var(--bo-muted); margin: 18px 0 20px; }
.buyout-consent input { flex-shrink: 0; width: 17px; height: 17px; accent-color: #20252b; margin-top: 2px; }
.buyout-consent a { color: var(--bo-ink); }
.buyout-dialog .buyout-error { margin-bottom: 14px; }
.buyout-success { color: #2c6e50; background: #eaf5ee; padding: 16px; border-radius: 9px; font-size: 14px; margin: 0; }
body:has(.buyout-dialog[open]) { overflow: hidden; }
@media (max-width: 1100px) {
  .buyout-calculator { padding: 28px; }
  .buyout-calculator-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 25px; }
  .buyout-result { padding: 23px; }
  .buyout-car img { width: 116px; height: 108px; }
  .buyout-car { gap: 15px; }
  .buyout-car h3 { font-size: 20px; }
  .buyout-quick button { padding: 8px; }
}
@media (max-width: 900px) {
  .buyout-page { padding-bottom: 56px; }
  .buyout-hero { grid-template-columns: 1fr 210px; gap: 25px; }
  .buyout-hero-aside { padding-left: 23px; }
  .buyout-calculator-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .buyout-result { position: static; padding: 28px; }
  .buyout-payment strong { font-size: 46px; }
  .buyout-car img { width: 152px; height: 116px; }
  .buyout-car h3 { font-size: 23px; }
  .buyout-result-details { font-size: 14px; }
  .buyout-result-summary, .buyout-monthly, .buyout-payment-parts { font-size: 13px; }
  .buyout-result-footnote, .buyout-result-method summary, .buyout-result-method p { font-size: 12px; }
  .buyout-included { grid-template-columns: 1fr 1.5fr; gap: 25px; padding: 28px; }
  .buyout-faq { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .buyout-settings-grid { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 600px) {
  body:has(.buyout-page) { padding-bottom: calc(78px + env(safe-area-inset-bottom)); }
  .buyout-page { padding: 20px 16px 42px; }
  .buyout-preview { font-size: 10px; gap: 7px; margin-bottom: 25px; }
  .buyout-hero { display: block; margin-bottom: 28px; }
  .buyout-hero h1 { font-size: 34px; letter-spacing: -1px; margin-bottom: 17px; }
  .buyout-lead { font-size: 15px; }
  .buyout-hero-aside { display: none; }
  .buyout-eyebrow { font-size: 9px; letter-spacing: 1.4px; margin-bottom: 10px; }
  .buyout-page h2 { font-size: 25px; letter-spacing: -.5px; }
  .buyout-calculator { padding: 22px 18px; border-radius: 17px; }
  .buyout-calculator-heading { display: block; padding-bottom: 20px; margin-bottom: 23px; }
  .buyout-auto-note { font-size: 11px; margin-top: 10px; }
  .buyout-auto-note > span { font-size: 17px; }
  .buyout-settings { margin-top: -4px; }
  .buyout-settings > summary { padding: 12px; gap: 3px 8px; font-size: 13px; }
  .buyout-settings > summary small { flex-basis: 100%; padding-left: 20px; font-size: 9px; }
  .buyout-settings form { padding: 5px 12px 14px; }
  .buyout-settings-tariffs { grid-template-columns: minmax(0, 1fr) 122px; gap: 10px; }
  .buyout-settings-tariffs > label { font-size: 11px; }
  .buyout-settings-input { gap: 6px; padding: 8px 10px; }
  .buyout-settings-input span { font-size: 9px; }
  .buyout-settings-input input { font-size: 16px; }
  .buyout-settings-actions { gap: 5px; }
  .buyout-settings-actions .buyout-primary { width: 100%; font-size: 12px !important; padding: 11px 10px; }
  .buyout-calculator-grid { gap: 25px; }
  .buyout-fieldset { padding-bottom: 24px; margin-bottom: 24px; }
  .buyout-fieldset legend { font-size: 16px; gap: 9px; margin-bottom: 15px; }
  .buyout-car { gap: 13px; align-items: flex-start; }
  .buyout-car img { width: 96px; height: 112px; object-position: center; }
  .buyout-car h3 { font-size: 19px; }
  .buyout-car p { font-size: 10px; margin-bottom: 4px; }
  .buyout-car p strong { font-size: 16px; }
  .buyout-car small { font-size: 9px; }
  .buyout-car-tag { font-size: 9px; }
  .buyout-money-field { padding: 10px 13px; }
  .buyout-money-field input { font-size: 24px; }
  .buyout-quick { gap: 6px; }
  .buyout-quick button { font-size: 10px; padding: 8px; min-height: 40px; }
  .buyout-segments { gap: 6px; }
  .buyout-segments label > span { font-size: 20px; min-height: 64px; }
  .buyout-schedules small { font-size: 9px; max-width: 75px; text-align: center; }
  .buyout-start-date summary { font-size: 11px; }
  .buyout-calendar-note { font-size: 11px; padding: 10px; }
  .buyout-tariff-card { padding: 13px 34px 13px 13px; }
  .buyout-tariff-head { gap: 3px 8px; }
  .buyout-tariff-head strong { font-size: 14px; }
  .buyout-tariff-head > span { font-size: 11px; }
  .buyout-radio-mark { right: 12px; top: 17px; }
  .buyout-result { margin: 0 -5px; border-radius: 13px; padding: 23px 20px 19px; }
  .buyout-result h3 { font-size: 23px; }
  .buyout-result-summary { font-size: 11px; }
  .buyout-payment strong { font-size: 39px; letter-spacing: -1px; }
  .buyout-result-details { font-size: 11px; }
  .buyout-result-details > div { gap: 8px; }
  .buyout-result-details > .buyout-grand-total dd { font-size: 15px; }
  .buyout-payment-parts { font-size: 11px; }
  .buyout-monthly { font-size: 11px; }
  .buyout-result-footnote { font-size: 10px; }
  .buyout-primary { font-size: 14px !important; }
  .buyout-included { display: block; padding: 23px; border-radius: 17px; margin-top: 16px; }
  .buyout-included > div:first-child { margin-bottom: 23px; }
  .buyout-included > div > p { font-size: 12px; margin-top: 8px; }
  .buyout-included li { font-size: 14px; }
  .buyout-included .buyout-excluded { font-size: 11px; }
  .buyout-steps { padding: 35px 4px; }
  .buyout-steps h2 { margin-bottom: 23px; }
  .buyout-steps ol { grid-template-columns: minmax(0, 1fr); gap: 23px; }
  .buyout-steps li { position: relative; padding-left: 48px; }
  .buyout-steps li > span { position: absolute; left: 0; top: 1px; }
  .buyout-steps h3 { font-size: 16px; margin-bottom: 5px; }
  .buyout-steps p { font-size: 13px; }
  .buyout-faq { gap: 13px; padding: 28px 4px 0; }
  .buyout-faq summary { font-size: 14px; }
  .buyout-faq details p { font-size: 13px; }
  .buyout-mobile-summary { display: flex; justify-content: space-between; align-items: center; gap: 10px; position: fixed; z-index: 1030; bottom: 0; left: 0; right: 0; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); min-height: 77px; background: #fff; border-top: 1px solid #e1e5e9; box-shadow: 0 -4px 22px #20252b0a; }
  .buyout-mobile-summary strong { display: block; color: #20252b; font-size: 20px; font-weight: 700; letter-spacing: -.5px; line-height: 1.2; }
  .buyout-mobile-summary > div > span { color: var(--bo-muted); font-size: 9px; display: block; margin-top: 3px; }
  .buyout-mobile-summary a { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 43px; padding: 9px 12px; text-decoration: none; color: #20252b; background: var(--bo-yellow); border-radius: 8px; font-size: 11px; font-weight: 700; }
  body:has(.buyout-dialog[open]) .buyout-mobile-summary { display: none; }
  .buyout-dialog { padding: 29px 22px 24px; max-height: 90dvh; border-radius: 14px; }
  .buyout-dialog h2 { font-size: 25px; }
  .buyout-contact-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .buyout-application-summary { font-size: 12px; padding: 12px; }
}
@media (max-width: 359px) {
  .buyout-page { padding-left: 12px; padding-right: 12px; }
  .buyout-hero h1 { font-size: 29px; }
  .buyout-calculator { padding-left: 15px; padding-right: 15px; }
  .buyout-car { gap: 10px; }
  .buyout-car img { width: 78px; }
  .buyout-car h3 { font-size: 17px; }
  .buyout-quick { display: grid; grid-template-columns: 1fr 1fr; }
  .buyout-quick button { font-size: 11px; }
  .buyout-tariff-head { display: block; }
  .buyout-tariff-head > span { display: block; margin-top: 3px; }
  .buyout-result { padding-left: 16px; padding-right: 16px; }
  .buyout-payment strong { font-size: 32px; }
  .buyout-result-details > div { grid-template-columns: minmax(0, 1fr) minmax(0, .7fr); }
  .buyout-result-details dd { overflow-wrap: anywhere; }
  .buyout-mobile-summary { padding-left: 12px; padding-right: 12px; }
  .buyout-mobile-summary strong { font-size: 18px; }
  .buyout-mobile-summary a { padding-left: 10px; padding-right: 10px; font-size: 10px; }
}

/* Term-rate and advance-dependent park fee model. */
.buyout-rule-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.buyout-money-field > label > span { font-size: inherit; color: #574716; font-weight: 700; }
.buyout-rule-result { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-top: 18px; padding: 13px 15px; border-radius: 9px; background: #fff8d6; font-size: 12px; color: #574716; }
.buyout-rule-result strong { font-size: 15px; }
.buyout-payment-parts { display: grid; gap: 9px; }
.buyout-payment-parts > span { display: flex; justify-content: space-between; gap: 8px; }
.buyout-result[aria-busy="true"] { opacity: .65; }
@media (max-width: 767px) { .buyout-rule-grid { grid-template-columns: minmax(0, 1fr); } }

.buyout-schedules { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Immutable quotes selected by the visitor, kept on this device. */
.buyout-select-label { display: block; font-size: 13px; margin-bottom: 8px; color: var(--bo-muted); }
.buyout-car-select { width: 100%; max-width: 100%; min-height: 50px; padding: 12px 36px 12px 14px; margin-bottom: 20px; border: 1px solid #d7dde2; border-radius: 10px; background: #fff; color: #20252b; font: inherit; font-size: 16px; font-weight: 600; }
.buyout-car-select:focus-visible, .buyout-saved-scroll:focus-visible { outline: 3px solid #efc300; outline-offset: 3px; }
.buyout-compare-link { display: inline-flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 600; color: #20252b; text-decoration: none; white-space: nowrap; }
.buyout-compare-link span { min-width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: var(--bo-yellow); }
.buyout-save-comparison { width: 100%; display: flex; justify-content: center; align-items: center; gap: 12px; min-height: 48px; padding: 12px; margin: 19px 0 10px; border: 1px solid #ffdf40; border-radius: 9px; background: transparent; color: #ffe575; font: inherit; font-size: 14px; font-weight: 650; cursor: pointer; }
.buyout-save-comparison:hover { background: #ffdf4014; }
.buyout-save-comparison:disabled { opacity: .5; cursor: wait; }
.buyout-save-feedback { font-size: 12px; line-height: 1.6; color: #d4e6d4; margin: 8px 0 16px; }
.buyout-save-feedback a { color: #ffe575; display: inline-block; }
.buyout-saved { min-width: 0; padding: 34px; margin-top: 24px; border: 1px solid #e4e8eb; border-radius: 20px; background: #fff; scroll-margin-top: 24px; }
.buyout-saved-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.buyout-saved-heading a { flex-shrink: 0; font-size: 13px; color: #5a626d; }
.buyout-saved > p { font-size: 13px; line-height: 1.7; color: #68717d; margin: 16px 0; }
.buyout-saved-empty { padding: 28px; text-align: center; background: #f7f8fa; border: 1px dashed #d5dce2; border-radius: 12px; }
.buyout-saved > .buyout-comparison-swipe { display: none; }
.buyout-saved:has(#saved-comparison-table[hidden]) > .buyout-comparison-swipe { display: none; }
.buyout-saved-scroll { max-width: 100%; overflow: auto; overscroll-behavior-x: contain; margin-top: 24px; border: 1px solid #e4e8eb; border-radius: 12px; }
.buyout-comparison-table { width: 100%; border-collapse: separate; border-spacing: 0; color: #20252b; font-size: 13px; line-height: 1.5; }
.buyout-comparison-table th, .buyout-comparison-table td { min-width: 215px; max-width: 270px; padding: 16px 20px; border-bottom: 1px solid #e9edf0; border-right: 1px solid #e9edf0; text-align: left; vertical-align: middle; }
.buyout-comparison-table tr > :first-child { min-width: 175px; width: 195px; font-weight: 500; color: #656e7a; background: #f8f9fa; }
.buyout-comparison-table thead th { vertical-align: top; }
.buyout-comparison-table thead img { display: block; width: 180px; height: 100px; object-fit: contain; margin: 10px 0 12px; }
.buyout-comparison-table thead strong { display: block; font-size: 17px; line-height: 1.4; }
.buyout-comparison-table thead small { display: block; font-size: 10px; font-weight: 400; color: #87909b; margin: 8px 0; }
.buyout-saved-number { font-size: 10px; color: #858e99; font-weight: 600; text-transform: uppercase; letter-spacing: 1px; }
.buyout-remove-comparison { font: inherit; font-weight: 400; font-size: 12px; color: #727b87; padding: 5px 0; border: 0; background: transparent; cursor: pointer; }
.buyout-remove-comparison:hover { color: #a52b36; text-decoration: underline; }
.buyout-comparison-table .is-daily td { background: #fff7cd; font-size: 25px; font-weight: 700; white-space: nowrap; letter-spacing: -.6px; }
.buyout-comparison-table .is-total td { font-size: 16px; font-weight: 700; background: #f7f9fa; }
.buyout-comparison-table tr:last-child > * { border-bottom: 0; }
.buyout-comparison-table tr > :last-child { border-right: 0; }
.buyout-saved [hidden], .buyout-save-feedback[hidden], .buyout-car img[hidden] { display: none; }
#car-select { scroll-margin-top: 30px; }
@media (max-width: 600px) {
  .buyout-compare-link { margin-top: 14px; font-size: 12px; }
  .buyout-saved { margin-top: 16px; padding: 22px 18px; border-radius: 17px; }
  .buyout-saved-heading { display: block; }
  .buyout-saved-heading a { display: inline-block; margin-top: 14px; }
  .buyout-saved > p { font-size: 11px; }
  .buyout-saved > .buyout-comparison-swipe { display: block; color: #816819; }
  .buyout-saved-empty { padding: 20px 15px; }
  .buyout-saved-scroll { margin-top: 18px; }
  .buyout-comparison-table { font-size: 11px; }
  .buyout-comparison-table th, .buyout-comparison-table td { min-width: 178px; padding: 12px; }
  .buyout-comparison-table tr > :first-child { min-width: 126px; width: 126px; position: sticky; left: 0; z-index: 1; }
  .buyout-comparison-table thead img { width: 146px; height: 82px; }
  .buyout-comparison-table thead strong { font-size: 15px; }
  .buyout-comparison-table .is-daily td { font-size: 23px; }
  .buyout-comparison-table .is-total td { font-size: 14px; }
  .buyout-car-select { font-size: 14px; }
}

.buyout-rule-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.buyout-minimum-rule { font-size: 11px; color: #cbd2db; margin: 14px 0 0; line-height: 1.6; }
.buyout-minimum-note { color: #ffe575; background: #ffdf4010; border: 1px solid #ffdf4040; border-radius: 8px; padding: 11px 12px; margin: 10px 0; font-size: 11px; line-height: 1.6; }
.buyout-floor-only[hidden] { display: none !important; }
@media (max-width: 767px) { .buyout-rule-grid { grid-template-columns: minmax(0, 1fr); } }
.buyout-market-reference{margin:16px 0 20px;padding:18px;border:1px solid #dce4ed;border-radius:16px;background:#f5f8fc;color:#334155}
.buyout-market-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;line-height:1.5}
.buyout-market-tag{padding:3px 8px;border-radius:6px;background:#e8eef5;color:#53677d;font-size:11px;white-space:nowrap}
.buyout-market-reference>strong{display:block;margin:10px 0 6px;font-size:17px;line-height:1.4;color:#34445a}
.buyout-market-reference.has-estimate>strong{font-size:27px;color:#182a45}
.buyout-market-reference p{font-size:12px;line-height:1.6;margin:6px 0}
.buyout-market-reference summary{font-size:12px;cursor:pointer;margin-top:10px}
.buyout-market-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;border-top:1px solid #dce4ed;margin-top:12px;padding-top:10px;font-size:11px;color:#617185}
.buyout-market-footer a{color:#405f80}

/* Driver payment calendar */
.buyout-plan{margin:44px 0;padding:32px;background:#fff;border:1px solid #e3e7ee;border-radius:24px;scroll-margin-top:90px}
.buyout-plan-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}.buyout-plan-heading h2{font-size:30px;margin:0 0 10px}.buyout-plan-heading p{color:#596478}.buyout-plan-heading a{text-decoration:none;text-align:center;max-width:280px}.buyout-plan-heading a[aria-disabled=true]{opacity:.5;pointer-events:none}
.buyout-plan-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.buyout-plan-facts p{background:#f4f6fa;border-radius:16px;padding:18px;margin:0;font-size:14px}.buyout-plan-facts strong{display:block;font-size:24px;margin:8px 0}.buyout-plan-facts small{display:block;color:#637086}
.buyout-plan-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.buyout-plan-grid label{display:block;font-weight:700;margin-bottom:12px}.buyout-plan-week,.buyout-plan-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.buyout-plan-week{margin:16px 0 6px;text-align:center;color:#6b7380;font-size:12px}.buyout-plan-day{padding:8px 4px;background:#eef5ff;border-radius:8px;min-height:75px;overflow-wrap:anywhere}.buyout-plan-day>span{font-size:12px;color:#596478}.buyout-plan-day strong{display:block;font-size:11px;margin:7px 0}.buyout-plan-day small{font-size:9px;display:block;color:#637086}.buyout-plan-day.is-free{background:#f3f4f6;color:#7e8792}.buyout-plan-day.is-special{background:#e7f7ea;outline:1px solid #b7dac0}.buyout-plan-table-wrap{overflow:auto;max-height:420px;border:1px solid #e3e7ee;border-radius:12px}.buyout-plan-table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}.buyout-plan-table caption{text-align:left;font-weight:700;padding:12px}.buyout-plan-table th,.buyout-plan-table td{padding:12px 10px;border-bottom:1px solid #e3e7ee;text-align:right}.buyout-plan-table th:first-child{text-align:left}.buyout-plan-table thead th{position:sticky;top:0;background:#f4f6fa;font-size:11px}.buyout-plan-table tbody th{font-weight:500}.buyout-plan-table tfoot{font-weight:700;background:#eef5ff}
@media(max-width:1050px){.buyout-plan-grid{grid-template-columns:1fr}.buyout-plan-day strong{font-size:13px}.buyout-plan-day{min-height:85px}}@media(max-width:600px){.buyout-plan{padding:18px 12px;margin:24px 0}.buyout-plan-heading{display:block}.buyout-plan-heading h2{font-size:25px}.buyout-plan-heading a{display:block;max-width:none}.buyout-plan-facts{grid-template-columns:1fr;gap:8px}.buyout-plan-facts p{padding:12px}.buyout-plan-facts strong{font-size:20px}.buyout-plan-day{padding:6px 3px;min-height:75px}.buyout-plan-day strong{font-size:10px}.buyout-plan-day small{font-size:8px}.buyout-plan-table{font-size:11px}.buyout-plan-table th,.buyout-plan-table td{padding:10px 7px}}

.buyout-plan-day strong{white-space:nowrap;overflow-wrap:normal}@media(max-width:760px){.buyout-plan-heading{display:block}.buyout-plan-heading a{display:block;max-width:none}.buyout-plan-facts{grid-template-columns:1fr;gap:8px}.buyout-plan-facts p{padding:12px}.buyout-plan-facts strong{font-size:20px}}@media(max-width:600px){.buyout-plan-day strong{font-size:9px}}

/* Actual fleet selection, separate from private pricing. */
.buyout-picker{padding:32px 0 20px;scroll-margin-top:95px}
.buyout-picker-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.buyout-picker h2{font-size:30px;margin:0 0 12px}.buyout-picker-heading p:not(.buyout-eyebrow){color:#626b76;font-size:15px}
.buyout-picker-arrows{display:flex;gap:10px}.buyout-picker-arrows button{width:44px;height:44px;background:#fff;border:1px solid #dce0e5;border-radius:50%;font-size:22px}.buyout-picker-arrows button:disabled{opacity:.3;cursor:default}
.buyout-category-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.buyout-category-tabs button{border:1px solid #dce0e5;border-radius:12px;padding:12px 18px;background:#fff;color:#20252b;font-weight:600}.buyout-category-tabs button[aria-pressed=true]{background:#ffde40;border-color:#ffde40}.buyout-category-tabs span{margin-left:8px;font-weight:400;color:#626b76}
.buyout-car-carousel{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;scrollbar-width:thin;scrollbar-color:#aab1bb transparent}
.buyout-inventory-card{flex:0 0 calc((100% - 40px)/3);min-width:0;border:1px solid #e1e5e9;border-radius:20px;background:white;overflow:hidden;scroll-snap-align:start;display:flex;flex-direction:column}.buyout-inventory-card[hidden],.buyout-category-empty[hidden]{display:none!important}.buyout-inventory-card.is-selected{outline:2px solid #e2bc18;outline-offset:-2px}
.buyout-inventory-image{height:205px;display:block;position:relative;background:#e9edf1;text-decoration:none;color:#626b76}.buyout-inventory-image img{width:100%;height:100%;object-fit:cover}.buyout-photo-pending{display:flex;align-items:center;justify-content:center;height:100%;font-size:14px}.buyout-inventory-class{position:absolute;left:14px;top:14px;padding:5px 10px;background:#fff;border-radius:8px;font-size:12px;color:#20252b}
.buyout-inventory-body{padding:20px;display:flex;flex-direction:column;flex:1}.buyout-inventory-id{font-size:12px;color:#626b76;margin:0 0 8px}.buyout-inventory-body h3{font-size:22px;margin:0 0 10px}.buyout-inventory-spec{color:#626b76;font-size:14px;line-height:1.65;margin:0 0 16px}.buyout-card-market{border-top:1px solid #e8ebef;padding-top:14px;margin-top:auto;margin-bottom:20px;font-size:12px}.buyout-card-market span{display:block;color:#626b76;margin-bottom:5px}.buyout-card-market strong{font-size:14px;font-weight:500}.buyout-inventory-body .buyout-primary{display:flex;justify-content:space-between;text-decoration:none;padding:13px 15px;font-size:14px}
.buyout-picker-footnote{color:#626b76;font-size:12px;margin:12px 0}.buyout-category-empty{padding:24px;background:#fff;border-radius:16px;color:#626b76}.buyout-awaiting{background:#fff;padding:32px;border:1px solid #e1e5e9;border-radius:20px;margin:24px 0;scroll-margin-top:100px}.buyout-awaiting h2{font-size:26px;margin:0 0 16px}.buyout-awaiting p:not(.buyout-eyebrow){max-width:700px;color:#626b76;line-height:1.6}.buyout-awaiting .buyout-primary{display:inline-block;text-decoration:none;margin-top:12px}
@media(max-width:1000px){.buyout-inventory-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:600px){.buyout-picker{padding-top:12px}.buyout-picker h2{font-size:25px}.buyout-picker-heading{gap:10px}.buyout-picker-arrows{display:none}.buyout-category-tabs{gap:8px}.buyout-category-tabs button{padding:10px 12px;font-size:13px}.buyout-car-carousel{gap:14px}.buyout-inventory-card{flex-basis:88%}.buyout-inventory-image{height:190px}.buyout-inventory-body{padding:18px}.buyout-awaiting{padding:22px}.buyout-awaiting h2{font-size:23px}.buyout-awaiting .buyout-primary{font-size:14px;line-height:1.5}}
