/* V8.6: faithful live benefits; lighter sessions; brand-consistent buttons; backend-derived checkout breakdown */
:root{--hc-v86-action:#1c2856;--hc-v86-action-hover:#263b7b}
.new-subscription .plans-catalogue .hc-v85-benefits-title{margin-top:22px!important}
.new-subscription .plans-catalogue .hc-v85-shared-benefits{max-width:1120px!important}
.plans-catalogue .hc-v84-plan-card .hc-v84-session-number,
.plans-catalogue .hc-v84-plan-card .hc-v84-session-description{font-weight:400!important;color:#1c2856!important}
.plans-catalogue .hc-v84-plan-card .hc-v84-session-number{font-size:clamp(20px,2vw,25px)!important;letter-spacing:0!important}
.plans-catalogue .hc-v84-plan-card .hc-v82-buy{background:var(--hc-v86-action)!important;border-color:var(--hc-v86-action)!important;color:white!important}
.plans-catalogue .hc-v84-plan-card .hc-v82-buy:hover:not(:disabled){background:var(--hc-v86-action-hover)!important}
.hc-v84-interest a#hc-register-interest{background:var(--hc-v86-action)!important;border-color:var(--hc-v86-action)!important;color:#fff!important}
.hc-v84-interest a#hc-register-interest:hover{background:var(--hc-v86-action-hover)!important}
.hc-v86-price-breakdown{margin:19px 0 6px;padding:15px 0;border-top:1px solid #d9e0eb;color:#1c2856;display:grid;gap:12px}
.hc-v86-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;font:400 12px/1.5 Montserrat,Arial,sans-serif;color:#66738e}
.hc-v86-price-row span:last-child{color:#1c2856;white-space:nowrap;text-align:right}
.hc-v86-price-total{border-top:1px solid #d9e0eb;margin-top:4px;padding-top:15px;color:#1c2856;font-weight:500}
.hc-v86-price-total span:last-child{font-weight:600}
#purchase-dialog.checkout-dialog .hc-v8-checkout-side .hc-v8-side-price{font-weight:500!important;font-size:clamp(24px,3vw,31px)}
#purchase-dialog.checkout-dialog .hc-v8-checkout-side>strong{font-weight:500!important}
@media (max-width:690px){.hc-v86-price-breakdown{gap:9px;margin-top:12px;padding-top:12px}.hc-v86-price-row{font-size:11px}}

/* V8.6 calculator fit: compact desktop panel that stays usable on mobile.
   Layout only — the original distance/efficiency controls and recommendation
   handling remain in place. */
.new-subscription .site-container > .calculator-inline {
  box-sizing:border-box;
  width:min(100%,1040px);
  max-width:1040px;
  margin:18px auto 24px;
  padding:18px 22px;
  display:grid;
  grid-template-columns:minmax(190px,.72fr) minmax(0,2.28fr);
  gap:22px;
  align-items:center;
  border-radius:14px;
}
.new-subscription .calculator-inline .mobility-heading {
  grid-column:1;
  border:0;
  border-right:1px solid #dfe6f2;
  display:flex;
  gap:12px;
  padding:2px 19px 2px 0;
  align-items:center;
}
.new-subscription .calculator-inline .mobility-heading-icon {
  width:37px;height:37px;min-width:37px;
}
.new-subscription .calculator-inline .mobility-heading-icon svg {width:19px;height:19px}
.new-subscription .calculator-inline .mobility-heading .small-label {font-size:9px;line-height:1.35}
.new-subscription .calculator-inline .mobility-heading h2 {font-size:clamp(17px,1.5vw,21px);line-height:1.25;margin:5px 0 0;font-weight:500}
.new-subscription .calculator-inline .mobility-heading p {margin-top:6px;font-size:11px;line-height:1.45}
.new-subscription .calculator-inline .mobility-inputs {
  grid-column:2;
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(160px,.84fr);
  gap:8px 18px;
  align-items:start;
  padding:0;
  margin:0;
}
.new-subscription .calculator-inline .inline-distance {
  grid-column:1;
  grid-row:1 / 4;
  min-width:0;
  border-right:1px solid #e2e8f1;
  padding:0 18px 0 0;
}
.new-subscription .calculator-inline .distance-question {font-size:12px;font-weight:500}
.new-subscription .calculator-inline .distance-control {gap:9px;margin:12px 0 9px}
.new-subscription .calculator-inline .distance-control>button {width:32px;height:32px;min-width:32px}
.new-subscription .calculator-inline .distance-value {width:66px;min-width:0}
.new-subscription .calculator-inline .distance-value input {width:64px;height:34px;font-size:23px}
.new-subscription .calculator-inline .distance-value span {font-size:9px}
.new-subscription .calculator-inline .distance-presets {display:flex;gap:5px;flex-wrap:wrap;margin:0}
.new-subscription .calculator-inline .distance-presets button {height:29px;min-height:29px;padding:4px 9px;font-size:10px}
.new-subscription .calculator-inline .efficiency-row {grid-column:2;grid-row:1;gap:6px;margin:0;padding:0;border:0;display:grid;align-self:start}
.new-subscription .calculator-inline .efficiency-row label {font-size:12px}
.new-subscription .calculator-inline .efficiency-value {min-height:36px;padding:6px 10px}
.new-subscription .calculator-inline .efficiency-value input {width:100%;min-width:0;font-size:18px}
.new-subscription .calculator-inline .energy-details {grid-column:2;grid-row:2;margin:0;gap:6px;min-width:0;font-size:10px}
.new-subscription .calculator-inline .energy-details p {margin:0;line-height:1.4}
.new-subscription .calculator-inline .calculator-continue {
  grid-column:2;grid-row:3;
  width:100%;min-width:0;
  height:38px;min-height:38px;
  margin:0;
  padding:7px 11px;
  white-space:normal;
  font-size:11px;
  font-weight:500;
}
.new-subscription .calculator-inline .calculator-continue svg {width:15px;height:15px;flex-shrink:0}
@media (max-width:860px) {
  .new-subscription .site-container > .calculator-inline {width:100%;display:block;padding:18px 20px;margin:18px auto 24px}
  .new-subscription .calculator-inline .mobility-heading {border:0;border-bottom:1px solid #e3e8f2;padding:0 0 13px;margin-bottom:14px}
  .new-subscription .calculator-inline .mobility-inputs {grid-template-columns:minmax(0,1.5fr) minmax(165px,1fr);gap:8px 16px}
}
@media (max-width:540px) {
  .new-subscription .site-container > .calculator-inline {padding:16px 14px;margin:12px auto 20px;border-radius:11px}
  .new-subscription .calculator-inline .mobility-heading {gap:10px;margin:0 0 12px;padding:0 0 12px}
  .new-subscription .calculator-inline .mobility-heading h2 {font-size:19px}
  .new-subscription .calculator-inline .mobility-inputs {display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:0}
  .new-subscription .calculator-inline .inline-distance {grid-column:1;grid-row:auto;border:0;border-bottom:1px solid #e3e8f2;padding:0 0 12px}
  .new-subscription .calculator-inline .distance-control {gap:7px;margin:9px 0}
  .new-subscription .calculator-inline .distance-control>button {width:32px;height:32px;min-width:32px}
  .new-subscription .calculator-inline .distance-value {width:58px}
  .new-subscription .calculator-inline .distance-value input {width:56px;font-size:21px}
  .new-subscription .calculator-inline .efficiency-row {grid-column:1;grid-row:auto;grid-template-columns:1fr 1fr;align-items:center}
  .new-subscription .calculator-inline .efficiency-value {max-width:100%;min-width:0}
  .new-subscription .calculator-inline .energy-details {grid-column:1;grid-row:auto;margin:0}
  .new-subscription .calculator-inline .calculator-continue {grid-column:1;grid-row:auto;min-height:42px;height:42px}
}
