﻿.calculator-hero { position: relative; overflow: hidden; background: linear-gradient(120deg, rgba(15,39,66,.97), rgba(21,58,91,.92)), radial-gradient(circle at 84% 20%, rgba(25,167,168,.2), transparent 34%), var(--navy); color: var(--white); }
.calculator-hero::after { position: absolute; right: 0; bottom: 0; width: 48%; height: 72%; background: linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px); background-size: 36px 36px; content: ""; opacity: .7; mask-image: linear-gradient(90deg, transparent, #000 32%); }
.calculator-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .76fr); align-items: center; gap: 64px; }
.calculator-hero-copy p:not(.eyebrow) { max-width: 720px; color: rgba(255,255,255,.84); font-family: var(--font-display); font-size: clamp(1.25rem,1.45vw,1.55rem); font-weight: 300; line-height: 1.55; }
.calculator-trust { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.calculator-trust span { padding: 8px 12px; border: 1px solid rgba(255,255,255,.24); border-radius: var(--radius); background: rgba(255,255,255,.08); color: rgba(255,255,255,.9); font-weight: 800; }
.calculator-hero-card { min-height: 330px; position: relative; border: 1px solid rgba(255,255,255,.2); border-radius: var(--radius); background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(242,247,250,.92)); box-shadow: 0 34px 90px rgba(0,0,0,.24); }
.calc-mini-card { position: absolute; left: 42px; top: 58px; display: grid; gap: 10px; width: 210px; padding: 24px; border-radius: var(--radius); background: var(--white); box-shadow: 0 18px 48px rgba(15,39,66,.13); }
.calc-mini-card span { width: 52px; height: 10px; border-radius: 999px; background: var(--accent); }
.calc-mini-card strong { color: var(--navy); font-size: .95rem; }
.calc-mini-card em { color: var(--navy); font-size: 2rem; font-style: normal; font-weight: 800; }
.calc-mini-chart { position: absolute; right: 34px; bottom: 46px; display: flex; align-items: flex-end; gap: 12px; width: 150px; height: 160px; padding: 18px; border-radius: var(--radius); background: rgba(25,167,168,.11); }
.calc-mini-chart span { flex: 1; border-radius: 999px 999px 6px 6px; background: var(--accent); opacity: .9; }
.calculator-section { background: var(--light); }
.cost-section { padding-top: 24px; }
.cost-grid { display: grid; grid-template-columns: minmax(340px, .9fr) minmax(0, 1.1fr); gap: 44px; align-items: start; }
.cost-card, .cost-table-panel { border: 1px solid var(--line); border-radius: calc(var(--radius) + 2px); background: var(--white); box-shadow: var(--shadow); }
.cost-card { overflow: hidden; }
.cost-card-head { padding: 30px 30px 24px; background: linear-gradient(145deg, #102640, #183c5f); color: var(--white); }
.cost-card-head .eyebrow { color: rgba(157,228,228,.92); }
.cost-card-head h2 { margin-bottom: 14px; color: var(--white); font-size: clamp(1.8rem, 2.1vw, 2.45rem); }
.cost-card-head p { margin: 0; color: rgba(255,255,255,.82); font-family: var(--font-display); font-size: 1.08rem; line-height: 1.55; }
.cost-slider-box, .cost-mode, .cost-bars, .cost-note, .cost-btn { margin-left: 30px; margin-right: 30px; }
.cost-slider-box { margin-top: 28px; }
.cost-slider-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 14px; }
.cost-slider-head strong { color: var(--navy); }
.cost-slider-value { min-width: 112px; padding: 10px 16px; border-radius: var(--radius); background: rgba(25,167,168,.12); color: var(--blue); font-size: 1.85rem; font-weight: 800; text-align: center; }
.cost-range { min-height: auto; padding: 0; accent-color: var(--accent); }
.cost-scale { display: grid; grid-template-columns: repeat(6, 1fr); margin-top: 8px; color: #8aa0b8; font-size: .84rem; font-weight: 700; text-align: center; }
.cost-band { display: inline-flex; margin-top: 14px; padding: 8px 12px; border: 1px solid rgba(25,167,168,.22); border-radius: 999px; background: rgba(25,167,168,.08); color: var(--blue); font-size: .86rem; font-weight: 800; }
.cost-mode { margin-top: 30px; }
.cost-mode p { margin: 0 0 12px; color: var(--navy); font-weight: 800; }
.cost-mode-switch { grid-template-columns: repeat(2, minmax(0,1fr)); }
.cost-mode small { display: block; margin-top: 10px; color: var(--muted); }
.cost-bars { display: grid; gap: 16px; margin-top: 24px; }
.cost-bar-row { display: grid; grid-template-columns: 180px minmax(0,1fr) 132px; align-items: center; gap: 18px; }
.cost-bar-copy strong, .cost-bar-copy span { display: block; }
.cost-bar-copy strong { color: var(--navy); }
.cost-bar-copy span { color: var(--muted); font-size: .84rem; }
.cost-bar-track { position: relative; overflow: hidden; height: 30px; border-radius: 10px; background: #e8eef5; }
.cost-bar-track span { display: block; width: 0; height: 100%; border-radius: inherit; transition: width .26s ease; }
.cost-bar-track.is-current span { background: linear-gradient(90deg, #df7a1d, #d95817); }
.cost-bar-track.is-brand span { background: linear-gradient(90deg, #1ea86b, #2ba54d); }
.cost-bar-value { color: #cc5d11; font-weight: 800; text-align: right; }
.cost-bar-value.is-brand { color: #1b8f51; }
.cost-savings-box { display: flex; justify-content: space-between; gap: 18px; align-items: center; margin: 28px 30px 20px; padding: 22px 24px; border: 2px solid rgba(30,168,107,.32); border-radius: calc(var(--radius) + 2px); background: linear-gradient(145deg, rgba(30,168,107,.08), rgba(157,228,228,.12)); }
.cost-savings-box span, .cost-savings-box small { display: block; }
.cost-savings-box span { color: #1f6f4b; font-size: .84rem; font-weight: 900; text-transform: uppercase; letter-spacing: .05em; }
.cost-savings-box strong { display: block; margin: 8px 0 6px; color: #167a4a; font-size: clamp(2rem, 3.2vw, 3rem); line-height: 1; }
.cost-savings-box small { color: #4d765f; }
.cost-savings-badge { display: grid; width: 110px; height: 110px; place-items: center; border-radius: 50%; background: #1b7448; color: var(--white); text-align: center; flex-shrink: 0; }
.cost-savings-badge strong { margin: 0; color: var(--white); font-size: 1.9rem; }
.cost-savings-badge small { color: rgba(255,255,255,.86); font-size: .84rem; font-weight: 700; }
.cost-btn { margin-bottom: 14px; width: calc(100% - 60px); }
.cost-note { margin-top: 0; margin-bottom: 30px; color: var(--muted); font-size: .86rem; line-height: 1.6; }
.cost-table-panel { padding: 26px 26px 28px; background: linear-gradient(145deg, #ffffff, #fbfcfe); }
.cost-table-panel h2 { margin-bottom: 20px; max-width: 16ch; }
.cost-table td { font-size: 1rem; vertical-align: top; }
.cost-table-note { margin: 18px 0 0; color: var(--muted); font-style: italic; line-height: 1.6; }
.package-section { background: linear-gradient(180deg, #ffffff, #f7f9fc); }
.package-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.package-card { overflow: hidden; border: 1px solid var(--line); border-radius: calc(var(--radius) + 2px); background: var(--white); box-shadow: var(--shadow); }
.package-card-head { display: grid; gap: 8px; padding: 24px 26px; background: linear-gradient(145deg, #102640, #183c5f); color: var(--white); }
.package-card-head span { color: var(--accent-light); font-size: .82rem; font-weight: 800; text-transform: uppercase; }
.package-card-head strong { font-size: 1.18rem; line-height: 1.3; }
.package-card .table-wrap { border: 0; border-top: 1px solid var(--line); border-radius: 0; }
.package-card-accent .package-card-head { background: linear-gradient(145deg, #118d8d, #1ca7a8); }
.package-table { min-width: 100%; }
.package-table th:nth-child(2), .package-table td:nth-child(2) { font-weight: 800; color: var(--navy); }
.package-extras { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 32px; margin-top: 32px; }
.launch-offer { padding: 24px 26px; border: 1px solid rgba(25,167,168,.24); border-radius: var(--radius); background: linear-gradient(145deg, rgba(25,167,168,.1), rgba(255,255,255,.96)); box-shadow: 0 18px 44px rgba(15,39,66,.08); }
.launch-offer span { color: var(--accent); font-size: .82rem; font-weight: 800; text-transform: uppercase; }
.launch-offer strong { display: block; margin: 10px 0 12px; color: var(--navy); font-size: 1.28rem; line-height: 1.25; }
.launch-offer p { margin-bottom: 0; color: var(--muted); }
.package-extra-block { padding: 24px 26px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: 0 18px 44px rgba(15,39,66,.08); }
.package-extra-block h3 { margin-bottom: 16px; }
.package-extra-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.package-extra-list li { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--line); color: var(--muted); }
.package-extra-list li:last-child { padding-bottom: 0; border-bottom: 0; }
.package-extra-list strong { color: var(--navy); white-space: nowrap; }
.payroll-calculator { display: grid; grid-template-columns: minmax(0, 1.06fr) minmax(360px, .94fr); gap: 34px; align-items: start; }
.calc-panel { border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: var(--shadow); }
.calc-form { display: grid; gap: 22px; padding: 26px; }
.calc-form fieldset { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; margin: 0; padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); }
.calc-form legend { padding: 0 8px; color: var(--navy); font-weight: 800; }
.calc-field { display: grid; gap: 7px; }
.calc-field-wide { grid-column: 1 / -1; }
.input-affix { display: grid; grid-template-columns: 1fr auto; align-items: center; border: 1px solid #d5dee9; border-radius: var(--radius); background: var(--white); }
.input-affix input { min-height: 48px; border: 0; box-shadow: none; }
.input-affix span { padding-right: 14px; color: var(--muted); font-weight: 800; }
.range-input { min-height: auto; padding: 0; accent-color: var(--accent); }
.range-row { display: flex; justify-content: space-between; color: var(--muted); font-size: .82rem; font-weight: 700; }
.segmented, .tax-class-grid { display: grid; grid-column: 1 / -1; gap: 8px; }
.segmented { grid-template-columns: repeat(2, minmax(0,1fr)); }
.tax-class-grid { grid-template-columns: repeat(6, minmax(0,1fr)); }
.segmented input, .tax-class-grid input { position: absolute; opacity: 0; pointer-events: none; }
.segmented span, .tax-class-grid span { display: grid; min-height: 42px; place-items: center; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); color: var(--blue); cursor: pointer; font-weight: 800; }
.segmented input:checked + span, .tax-class-grid input:checked + span { border-color: var(--accent); background: rgba(25,167,168,.12); color: var(--navy); box-shadow: 0 0 0 3px rgba(25,167,168,.1); }
.toggle-row { display: flex; align-items: center; gap: 10px; min-height: 48px; color: var(--navy); font-weight: 800; }
.toggle-row input { width: 18px; min-height: 18px; accent-color: var(--accent); }
.stepper { display: grid; grid-template-columns: 46px 1fr 46px; overflow: hidden; border: 1px solid #d5dee9; border-radius: var(--radius); }
.stepper input { border: 0; text-align: center; box-shadow: none; }
.stepper button { border: 0; background: rgba(25,167,168,.12); color: var(--navy); cursor: pointer; font-size: 1.2rem; font-weight: 800; }
.calc-result { position: sticky; top: calc(var(--header-height) + 24px); padding: 28px; }
.calc-result h2 { margin-bottom: 4px; font-size: clamp(2.3rem, 4vw, 4.8rem); }
.result-subline { margin-bottom: 22px; color: var(--muted); font-weight: 700; }
.result-meter { height: 12px; overflow: hidden; border-radius: 999px; background: #e8eef5; }
.result-meter span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--accent), #53d6d1); transition: width .24s ease; }
.result-share { display: flex; justify-content: space-between; gap: 16px; margin: 12px 0 24px; color: var(--muted); font-size: .92rem; }
.result-share strong { color: var(--navy); }
.result-tabs { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; margin-bottom: 24px; }
.result-tabs div { padding: 14px; border-radius: var(--radius); background: var(--light); }
.result-tabs strong { display: block; color: var(--navy); font-size: 1.05rem; }
.result-tabs span { color: var(--muted); font-size: .82rem; font-weight: 700; }
.breakdown h3 { margin-bottom: 12px; }
.breakdown dl { display: grid; gap: 8px; margin: 0; }
.breakdown div { display: flex; justify-content: space-between; gap: 18px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.breakdown dt { color: var(--muted); }
.breakdown dd { margin: 0; color: var(--navy); font-weight: 800; text-align: right; }
.annual-box { display: flex; justify-content: space-between; gap: 18px; margin: 24px 0 16px; padding: 18px; border-left: 4px solid var(--accent); border-radius: var(--radius); background: rgba(25,167,168,.08); }
.annual-box span { color: var(--muted); font-weight: 700; }
.annual-box strong { color: var(--navy); font-size: 1.25rem; }
.employer-cost-box { margin: 24px 0 16px; overflow: hidden; border: 1px solid rgba(25,167,168,.35); border-radius: var(--radius); background: linear-gradient(145deg, rgba(25,167,168,.1), rgba(255,255,255,.98)); box-shadow: 0 18px 46px rgba(15,39,66,.09); }
.employer-cost-head { padding: 20px; border-bottom: 1px solid rgba(25,167,168,.22); background: rgba(25,167,168,.1); }
.employer-cost-head span, .employer-year span { display: block; color: var(--muted); font-size: .88rem; font-weight: 800; text-transform: uppercase; }
.employer-cost-head strong { display: block; margin-top: 4px; color: var(--navy); font-size: clamp(1.9rem, 3vw, 2.6rem); line-height: 1.08; }
.employer-cost-head small { color: var(--muted); font-weight: 700; }
.employer-cost-box dl { display: grid; gap: 0; margin: 0; padding: 12px 20px; }
.employer-cost-box dl div { display: flex; justify-content: space-between; gap: 18px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.employer-cost-box dl div:last-child { border-bottom: 0; }
.employer-cost-box dt { color: var(--muted); }
.employer-cost-box dd { margin: 0; color: var(--navy); font-weight: 800; text-align: right; }
.employer-cost-box .is-total dt, .employer-cost-box .is-total dd { color: var(--accent); font-weight: 800; }
.employer-year { display: flex; justify-content: space-between; gap: 18px; padding: 18px 20px; background: var(--navy); }
.employer-year span { color: rgba(255,255,255,.72); }
.employer-year strong { color: var(--white); font-size: 1.25rem; }
.calc-disclaimer { margin: 0; color: var(--muted); font-size: .9rem; }
.calculator-info { background: var(--white); }
.info-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 28px; }
.info-card { padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: 0 16px 44px rgba(15,39,66,.06); }
.info-card span { display: inline-grid; width: 42px; height: 42px; margin-bottom: 20px; place-items: center; border-radius: var(--radius); background: rgba(25,167,168,.12); color: var(--blue); font-weight: 800; }
.info-card p { margin: 0; color: var(--muted); }
.cta-grid { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 34px; }
@media (max-width: 1040px) { .calculator-hero-grid, .payroll-calculator, .cta-grid, .cost-grid, .package-grid, .package-extras { grid-template-columns: 1fr; } .calc-result { position: static; } .info-grid { grid-template-columns: 1fr; } }
@media (max-width: 720px) { .calc-form fieldset, .tax-class-grid { grid-template-columns: 1fr; } .tax-class-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } .result-tabs { grid-template-columns: 1fr; } .calculator-hero-card { min-height: 280px; } .calc-mini-card { left: 22px; top: 42px; } .calc-mini-chart { right: 22px; bottom: 28px; } .cost-bar-row { grid-template-columns: 1fr; gap: 10px; } .cost-bar-value { text-align: left; } .cost-savings-box { align-items: flex-start; flex-direction: column; } }
@media (max-width: 520px) { .calc-form, .calc-form fieldset, .calc-result { padding: 18px; } .tax-class-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } .annual-box, .result-share { flex-direction: column; } }

.calculator-help { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; margin: -6px 0 34px; }
.calculator-help article { padding: 18px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); box-shadow: 0 14px 34px rgba(15,39,66,.06); }
.calculator-help span, .calc-step-grid span { display: inline-grid; width: 34px; height: 34px; margin-bottom: 12px; place-items: center; border-radius: 50%; background: var(--accent); color: var(--white); font-weight: 800; }
.calculator-help strong { display: block; color: var(--navy); }
.calculator-help p, .knowledge-grid p, .calc-step-grid p { margin: 6px 0 0; color: var(--muted); font-size: .94rem; }
.field-help { display: block; color: var(--muted); font-size: .8rem; line-height: 1.45; }
.calculator-knowledge { background: var(--white); }
.knowledge-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 26px; margin-bottom: 54px; }
.knowledge-grid article { padding: 22px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, #fff, #f6fbfb); box-shadow: 0 16px 44px rgba(15,39,66,.06); }
.rate-section { margin-top: 42px; }
.rate-section h3, .calc-steps h3 { font-size: clamp(1.55rem, 2vw, 2.2rem); }
.rate-cards { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 24px; margin: 30px 0 36px; }
.rate-cards div { padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--light); box-shadow: 0 16px 38px rgba(15,39,66,.06); }
.rate-cards span { display: block; color: var(--accent); font-size: .82rem; font-weight: 800; text-transform: uppercase; }
.rate-cards strong { display: block; margin-top: 8px; color: var(--navy); font-size: 1.45rem; }
.rate-cards small { color: var(--muted); font-weight: 700; }
.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); }
.rate-table { width: 100%; min-width: 760px; border-collapse: collapse; background: var(--white); }
.rate-table th, .rate-table td { padding: 13px 14px; border-bottom: 1px solid var(--line); text-align: left; }
.rate-table th { background: var(--navy); color: var(--white); font-weight: 800; }
.rate-table tr:last-child td { border-bottom: 0; }
.calc-steps { margin-top: 48px; padding: 34px; border-radius: var(--radius); background: var(--light); }
.calc-step-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 26px; }
.calc-step-grid article { padding: 24px; border-radius: var(--radius); background: var(--white); }
.calc-step-grid h4 { margin: 0; color: var(--navy); font-size: 1.05rem; }
.flow-guide { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; margin-top: 30px; }
.flow-guide article { padding: 24px 26px; border-left: 4px solid var(--accent); border-radius: var(--radius); background: var(--white); box-shadow: 0 12px 32px rgba(15,39,66,.05); }
.flow-guide span { display: inline-flex; margin-bottom: 10px; color: var(--accent); font-size: .78rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.flow-guide h4 { margin: 0 0 8px; color: var(--navy); font-size: 1.1rem; }
.flow-guide p { margin: 0; color: var(--muted); font-size: .96rem; line-height: 1.65; }
.flow-guide strong { color: var(--navy); white-space: nowrap; }
.flow-equation { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.25fr); align-items: center; gap: 18px; margin-top: 24px; padding: 22px; border: 1px solid rgba(25,167,168,.24); border-radius: var(--radius); background: linear-gradient(145deg, rgba(15,39,66,.96), rgba(21,58,91,.94)); color: var(--white); }
.flow-equation span { display: grid; gap: 4px; min-width: 0; }
.flow-equation small { color: rgba(255,255,255,.72); font-weight: 800; }
.flow-equation strong { font-size: clamp(1.2rem, 2vw, 1.8rem); line-height: 1.1; }
.flow-equation b { color: var(--accent-light); font-size: 1.5rem; }
.flow-equation .total strong { color: var(--accent-light); }
@media (max-width: 1040px) { .calculator-help, .knowledge-grid, .rate-cards, .calc-step-grid, .flow-guide { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 720px) { .flow-equation { grid-template-columns: 1fr; gap: 8px; } .flow-equation b { text-align: center; } }
@media (max-width: 620px) { .calculator-help, .knowledge-grid, .rate-cards, .calc-step-grid, .flow-guide { grid-template-columns: 1fr; } .calc-steps { padding: 22px; } .cost-card-head, .cost-slider-box, .cost-mode, .cost-bars, .cost-note { margin-left: 18px; margin-right: 18px; } .cost-card-head { padding: 24px 18px 20px; } .cost-btn { width: calc(100% - 36px); margin-left: 18px; margin-right: 18px; } .cost-savings-box { margin-left: 18px; margin-right: 18px; } .cost-table-panel { padding: 22px 18px; } .cost-slider-head { align-items: flex-start; flex-direction: column; } }

.employer-flow article { position: relative; overflow: hidden; }
.employer-flow strong { display: block; margin: 8px 0 8px; color: var(--navy); font-size: clamp(1.45rem, 2vw, 2rem); line-height: 1.08; }
.employer-flow .is-primary { border: 1px solid rgba(25,167,168,.34); background: linear-gradient(145deg, rgba(25,167,168,.12), #fff); box-shadow: 0 18px 44px rgba(15,39,66,.08); }
.employer-flow .is-primary strong { color: var(--accent); }
/* Mobile Optimierung Kostenrechner */
.cost-grid, .cost-card, .cost-table-panel, .package-grid, .package-card, .package-extra-block, .table-wrap { min-width: 0; max-width: 100%; }
.cost-card, .cost-table-panel, .package-card { overflow: hidden; }
.table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.table-wrap::after { display: block; padding: 8px 12px 10px; color: var(--muted); content: "Tabelle seitlich wischen"; font-size: .78rem; font-weight: 700; }
@media (max-width: 720px) {
  .calculator-hero-grid { gap: 28px; }
  .calculator-hero-card { display: none; }
  .cost-grid { gap: 24px; }
  .cost-card-head h2, .cost-table-panel h2 { max-width: none; font-size: 1.55rem; }
  .cost-mode-switch { grid-template-columns: 1fr; }
  .cost-bar-row { grid-template-columns: 1fr; align-items: stretch; gap: 8px; }
  .cost-bar-copy, .cost-bar-value { min-width: 0; text-align: left; }
  .cost-bar-track { width: 100%; }
  .cost-savings-box { display: grid; grid-template-columns: 1fr; gap: 14px; }
  .cost-savings-box strong { font-size: clamp(1.8rem, 10vw, 2.35rem); overflow-wrap: anywhere; }
  .cost-savings-badge { width: 86px; height: 86px; }
  .cost-savings-badge strong { font-size: 1.45rem; }
  .cost-note { overflow-wrap: anywhere; }
  .rate-table { min-width: 620px; }
  .package-table { min-width: 560px; }
}
@media (max-width: 480px) {
  .cost-section .container, .package-section .container { width: min(100% - 20px, 1120px); }
  .cost-card-head, .cost-slider-box, .cost-mode, .cost-bars, .cost-note { margin-left: 14px; margin-right: 14px; }
  .cost-card-head { padding: 22px 14px 18px; }
  .cost-slider-value { width: 100%; min-width: 0; font-size: 1.45rem; }
  .cost-scale { font-size: .72rem; }
  .cost-band { max-width: 100%; white-space: normal; }
  .cost-btn { width: calc(100% - 28px); margin-left: 14px; margin-right: 14px; padding-left: 12px; padding-right: 12px; text-align: center; }
  .cost-savings-box { margin-left: 14px; margin-right: 14px; padding: 18px 16px; }
  .cost-table-panel { padding: 20px 14px; }
  .rate-table { min-width: 560px; }
  .package-table { min-width: 520px; }
}

