/* Shared reading scale for the booking and price prototypes. */
:root{--read-body:clamp(18px,.8vw,25px);--read-small:clamp(16px,.65vw,21px);--read-title:clamp(24px,1vw,34px);--muted:#574f60}
body{font-size:var(--read-body);line-height:1.65}
body :is(.intro #description,.empty,.visit-lead,.price-hero p,.help-model p,.model-faq p,.quality-guide-grid p,.payment-option small,.consent,.visit-details,.review-row,.model-price,.repair-name strong,.quality .repair-name strong,.price,.summary-device h3,.accessories .accessory h3,.line){font-size:var(--read-body)}
body :is(.quality-info,.summary-note,.summary-head p,.summary-device>small,.total small,.field label,.field-label,.repair-name small,.quality .repair-name small,.section-heading small,.panel-top small,.color,.change-model summary,.other-device summary,.other-device p,.device-toolbar small,.add-device-hint,.device-shortcuts small,.accessories .accessory p,.booking-trust,.response-promise a,.date-picker-row p,.day span,.slot small,.slot-price,.model-card>p,.model-count,.breadcrumbs,.home-link,.help,.info,.saved-device p,.link-btn,.small-btn,.brand span,.teaser-label,.protection-teaser p:not(.teaser-label),#address-status,#address-suggestions span){font-size:var(--read-small);line-height:1.6}
body :is(.btn,.vat-control,.vat-control button,.step,.series-tabs button,.location-types button,.arrival-options button,.device-shortcuts strong,.model-card a){font-size:var(--read-small);font-weight:700}
body :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:var(--read-body);min-height:56px}
body :is(h2,.panel-top h2,.summary-head h2,.model-card h3,.section-heading h3){font-size:var(--read-title)}
body .response-promise{background:#f6effc;border:1px solid #e1ceef;border-radius:14px;padding:20px;margin-top:24px;font-size:var(--read-body)}
body .response-promise strong{display:block;font-size:var(--read-title);font-weight:800;line-height:1.3}
body .response-promise p{font-size:var(--read-body);color:#493e52;line-height:1.6;margin:12px 0}
body .response-promise a{display:block;color:#513368;font-weight:800;min-height:44px;padding-top:5px}
body .intro #description{margin-top:16px;max-width:850px;color:#574f60}
body .intro>p:first-child{font-size:var(--read-small)}
body .model-card{padding:28px}body .summary-body,body .summary-head{padding:28px}
@media(min-width:1100px){body .layout{grid-template-columns:minmax(0,1fr) clamp(390px,16vw,550px)}body aside{max-height:calc(100dvh - 48px);overflow:auto;scrollbar-width:thin}}
@media(min-width:2200px){body .panel{padding:40px}body .summary-body,body .summary-head{padding:32px}body header{min-height:120px}body header img{width:190px;height:auto}body .brand b{font-size:28px}body .visit-guide p{font-size:25px}body .total strong{font-size:38px}}
@media(max-width:760px){:root{--read-body:17px;--read-small:14px;--read-title:24px}body .step{font-size:12px;gap:5px}body .progress>div{gap:10px;padding-inline:16px}body .repair-main{flex-wrap:wrap}body .repair-name{min-width:110px}body .quality{gap:9px}body .quality .price{font-size:15px}body .panel-top{flex-wrap:wrap}body .summary-body,body .summary-head{padding:22px}body .response-promise strong{font-size:23px}body .vat-control{flex-wrap:wrap}body .color{font-size:13px}body .accessories .accessory{flex-wrap:wrap}body .accessories .small-btn{margin-left:auto}body .location-types button{padding:10px 8px;font-size:13px}body .total small{font-size:13px}body .model-card a{font-size:16px}}
