.pricing-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px 48px;margin:30px auto 24px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 35px rgba(34,76,97,.06)}
.pricing-controls[hidden]{display:none}
.rental-control label,.billing-control>span{display:block;font-size:.9rem;font-weight:700;margin-bottom:12px}
.rental-stepper{display:flex;justify-content:center;align-items:center;gap:10px}
.rental-stepper button{width:48px;height:48px;border:1px solid #bdd8e4;border-radius:10px;background:#e5f4fb;color:var(--blue-dark);font-family:inherit;font-weight:700;font-size:1.5rem;cursor:pointer}
.rental-stepper button:disabled{opacity:.4;cursor:default}
.rental-stepper input{width:110px;min-width:0;height:48px;text-align:center;border:1px solid #bdd8e4;border-radius:10px;font:700 1.25rem Manrope;color:var(--ink);background:#fff;appearance:textfield;-moz-appearance:textfield}
.rental-stepper input::-webkit-inner-spin-button,.rental-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.rental-stepper input[aria-invalid="true"]{border-color:#b42318}
.pricing-controls :focus-visible{outline:3px solid var(--blue-dark);outline-offset:3px}
.pricing-controls .billing-toggle{margin:0;max-width:100%}
.pricing-controls .billing-option{min-height:48px;font-size:.875rem}
#rental-summary,#rental-count-error{flex-basis:100%;margin:0;font-size:.875rem}
#rental-summary{color:var(--muted)}
#rental-count-error{color:#b42318}
.pricing-page .annual-hint{height:auto;min-height:42px;font-size:.8rem}
.pricing-page .price{flex-wrap:wrap;gap:4px 0}
.pricing-page .price strong{font-size:clamp(2rem,3.4vw,3.55rem);overflow-wrap:anywhere;min-width:0;max-width:100%}
@media(max-width:600px){
  .pricing-controls{padding:20px 12px;gap:22px}
  .rental-control,.billing-control{width:100%}
  .pricing-controls .billing-toggle{margin:0 auto}
  .pricing-controls .billing-option{padding:10px}
  .pricing-controls .billing-option span{display:block;margin:4px 0 0;font-size:.75rem}
  .pricing-page .price strong{font-size:2.8rem}
}
.pricing-page .pricing-grid{align-items:start}
.plan-features li{padding-bottom:12px;border-bottom:1px solid var(--line);line-height:1.6}
.plan-inheritance{padding:16px;border-radius:10px;background:#f1f9fc;color:var(--ink);font-size:.9rem;line-height:1.65}
.plan-details-link{display:inline-block;padding:10px 0;color:var(--blue-dark);font-size:.875rem;font-weight:700}
#leistungsvergleich{scroll-margin-top:100px}
.comparison-table tbody th{width:43%;font-weight:700}
.comparison-table tbody th small{display:block;margin-top:5px;color:var(--muted);font-size:.875rem;font-weight:400;line-height:1.55}
.comparison-table tbody th a,.comparison-notes a{color:var(--blue-dark);text-decoration:underline;text-underline-offset:3px}
.comparison-table .comparison-group th{padding:16px 22px;background:#e6f1f6;color:var(--ink);font-size:.95rem;border-top:1px solid var(--line)}
.comparison-table td,.comparison-table th{font-size:.875rem}
.comparison-notes{margin-top:24px;color:var(--muted);font-size:.875rem;line-height:1.7}
.comparison-notes p{margin:0 0 12px}
.comparison-scroll-hint{display:none;color:var(--muted);font-size:.875rem}
.comparison-table-wrap:focus-visible,.plan-details-link:focus-visible{outline:3px solid var(--blue-dark);outline-offset:4px}
.pricing-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:760px){
  .comparison-scroll-hint{display:block}
  .comparison-table tbody th{width:34%}
}
