.product-detail-page,.product-detail-sections{width:min(1440px,calc(100% - 40px));margin:0 auto 45px;color:#28496e}.product-crumbs{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:18px 0 36px;font-size:14px;color:#58769c}.product-crumbs strong{color:#071a32}.product-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:start}.product-gallery{min-width:0}.product-main-frame{aspect-ratio:5/3;display:grid;place-items:center;background:#fff;border:1px solid #d5dfed;padding:24px}.product-gallery .main-photo{display:block;width:100%;height:100%;min-height:0;max-height:430px;object-fit:contain;background:#fff;border:0}.product-thumbnails{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}.product-thumbnails button{width:calc((100% - 48px)/5);min-width:72px;max-width:134px;height:76px;padding:5px;background:#fff;border:1px solid #d5dfed;cursor:pointer}.product-thumbnails button.active{border-color:#e40036}.product-thumbnails img{width:100%;height:100%;object-fit:contain}.product-summary{min-width:0}.product-category{margin:0 0 8px;color:#e40036;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.product-summary h1{margin:0 0 9px;font-size:clamp(28px,3vw,44px);line-height:1.13;letter-spacing:-.035em;color:#071a32}.product-model-summary{font-size:14px;color:#6f87a8;margin:0 0 15px}.product-model-links{display:flex;flex-wrap:wrap;gap:7px}.product-model-links a{border:1px solid #d5dfed;padding:6px 10px;background:white;font-size:12px}.product-intro{font-size:16px;line-height:1.65;margin:18px 0 20px}.product-key-specs{margin:20px 0 22px;border-top:1px solid #d5dfed;border-bottom:1px solid #d5dfed}.product-key-specs>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #e9eef5;font-size:14px}.product-key-specs>div:last-child{border:0}.product-key-specs dt{display:flex;gap:9px;align-items:baseline;color:#6f87a8}.product-key-specs dt>span{color:#94a7bd;min-width:16px}.product-key-specs dd{margin:0;font-weight:600;color:#071a32}.product-key-specs .product-applications{grid-template-columns:150px 1fr;padding:13px 0}.product-applications ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:7px 18px}.product-applications li{position:relative;padding-left:18px;font-size:13px;line-height:1.4;color:#627d9e;font-weight:400}.product-applications li:before{content:'✓';position:absolute;left:0;color:#e40036}.product-availability{padding:16px 0 20px;border:0}.product-stock{font-size:12px;font-weight:700;margin:0 0 24px}.product-stock:before{content:none}.product-summary .available{color:#08aa49}.product-availability h2{font-size:12px;font-weight:500;color:#6f87a8;margin:0 0 6px}.product-branch-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;border:0}.product-branch-grid>div{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 0;border:0;font-size:12px}.product-branch-grid strong{font-weight:500;white-space:nowrap}.product-branch-grid strong:before{content:none}.product-price{padding:17px 0 19px;margin-top:20px;border-top:1px solid #e1e8f1;border-bottom:1px solid #e1e8f1;display:grid;gap:4px}.product-price>span{font-size:12px;color:#6f87a8}.product-price>strong{font-size:31px;line-height:1.2;color:#e40036}.product-price>small{font-size:12px}.product-purchase-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.product-purchase-actions .button{font-size:12px;min-height:46px;padding:13px 20px}.product-purchase-actions .button span{margin-right:5px}.product-order-note{font-size:13px;line-height:1.5;color:#6f87a8;margin-top:13px}@media(max-width:1100px){.product-hero{gap:28px;grid-template-columns:1fr 1fr}.product-key-specs .product-applications{grid-template-columns:1fr}.product-branch-grid{grid-template-columns:1fr}}@media(max-width:760px){.product-detail-page,.product-detail-sections{width:calc(100% - 28px)}.product-hero{grid-template-columns:1fr;gap:28px}.product-crumbs{padding-bottom:22px;font-size:12px;gap:8px}.product-summary h1{font-size:30px}.product-main-frame{padding:14px}.product-branch-grid{grid-template-columns:1fr 1fr;gap:0 15px}.product-thumbnails button{height:64px}}@media(max-width:430px){.product-branch-grid,.product-applications ul{grid-template-columns:1fr}.product-purchase-actions{display:grid}.product-purchase-actions .button{width:100%}}
.rental-estimate [data-estimate-breakdown]{display:grid;grid-template-columns:1fr auto;gap:7px 18px;width:100%;font-size:14px;text-align:left}.rental-estimate dt{font-weight:400}.rental-estimate dd{margin:0;text-align:right;font-weight:600}

/* Rental wizard: a lighter transition and PEMA header. */
.rental-wizard>header{background:#cf002a;color:white}.rental-wizard>header h2,.rental-wizard>header span{color:white}
.wizard-step.active{animation:rental-step-in .2s ease-out}
@keyframes rental-step-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.rental-requirements-hint{font-size:13px;color:#627d9e;margin:8px 0 20px}
@media(prefers-reduced-motion:reduce){.wizard-step.active{animation:none}}
.operation-options{border:0;padding:0;margin:0 0 24px;min-width:0}.operation-options legend{font-size:14px;font-weight:600;margin-bottom:10px}.operation-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.operation-card{position:relative;cursor:pointer;margin:0}.operation-card input{position:absolute;width:1px;height:1px;opacity:0}.operation-card-body{display:flex;flex-direction:column;gap:10px;height:100%;padding:16px;border:1px solid #d5dfed;border-radius:7px;background:#fff;transition:background .15s,border-color .15s}.operation-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.operation-card-top strong{font-size:19px;color:#28496e}.operation-check{display:grid;place-items:center;width:22px;height:22px;border:1px solid #cbd5e1;border-radius:50%;color:transparent;flex-shrink:0}.operation-description{font-size:12px;color:#627d9e;line-height:1.5}.operation-price{font-size:13px;font-weight:700;margin-top:auto}.operation-card input:checked+.operation-card-body{border-color:#cf002a;background:#fff3f6;box-shadow:inset 0 0 0 1px #cf002a}.operation-card input:checked+.operation-card-body .operation-check{background:#cf002a;border-color:#cf002a;color:white}.operation-card input:focus-visible+.operation-card-body{outline:2px solid #28496e;outline-offset:3px}.operation-card:hover .operation-card-body{border-color:#cf002a}@media(max-width:430px){.operation-cards{grid-template-columns:1fr}.operation-card-body{padding:13px}}

.rental-wizard>header .wizard-live-summary{font-size:13px;line-height:1.6;color:#fff;margin:10px 0 0;max-width:660px;overflow-wrap:anywhere;font-weight:400}
.address-results{margin:-4px 0 12px;border:1px solid #d5dfed;background:white;border-radius:5px;max-height:220px;overflow:auto}.address-results button{display:block;width:100%;border:0;border-bottom:1px solid #edf0f3;text-align:left;background:white;color:#28496e;padding:12px;font:inherit;font-size:13px;cursor:pointer}.address-results button:hover,.address-results button:focus{background:#fff0f4}.operation-options[hidden]{display:none}
.branch-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.branch-card .operation-card-body{padding:10px;gap:5px}.branch-card .operation-card-top strong{font-size:14px}.branch-card .operation-description{font-size:11px;line-height:1.35}.branch-card .operation-check{width:17px;height:17px;font-size:11px}.branch-unavailable{cursor:default}.branch-unavailable .operation-card-body{background:#f5f6f7;border-color:#e0e3e7}.branch-unavailable .operation-card-top strong,.branch-unavailable .operation-description{color:#808b99}.branch-overview-map{position:relative;margin:18px 0 0;border-radius:7px;background:#f6f7f8;overflow:hidden}.branch-overview-map>img{display:block;width:100%;height:auto}.branch-map-point{position:absolute;transform:translate(-50%,-50%);padding:8px;border:0;background:transparent;color:#cf002a;cursor:pointer}.branch-map-dot{display:block;width:9px;height:9px;border:2px solid white;border-radius:50%;background:currentColor;box-shadow:0 0 0 1px currentColor}.branch-map-name{position:absolute;left:calc(100% - 3px);top:5px;color:#334155;font-size:10px;white-space:nowrap;text-shadow:0 1px white}.branch-map-point-1 .branch-map-name{left:auto;right:calc(100% - 3px);top:-4px}.branch-map-point-2 .branch-map-name{top:15px}.branch-map-point-8 .branch-map-name{left:auto;right:calc(100% - 3px)}.branch-map-point:disabled{color:#a4abb5;cursor:default}.branch-map-point.selected .branch-map-dot{box-shadow:0 0 0 4px #cf002a33}.branch-map-point.selected .branch-map-name{font-weight:700;color:#cf002a}.branch-map-hint{font-size:12px;color:#627d9e}.service-cards{margin-bottom:20px}.service-cards strong{font-size:16px}.wizard-live-summary>span,[data-final-summary]>span{display:block}.rental-wizard>header .wizard-live-summary>span{color:white;font-size:12px;text-transform:none;letter-spacing:normal}.wizard-final-summary{margin:20px 0;padding:15px;background:#f5f6f8;border-radius:6px}.wizard-final-summary h4{margin:0 0 8px}.wizard-final-summary span{font-size:13px;line-height:1.7;overflow-wrap:anywhere}@media(max-width:600px){.branch-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.branch-map-name{font-size:8px}.branch-map-dot{width:7px;height:7px}}
.rental-wizard>header .wizard-live-summary[hidden]{display:none}
.rental-estimate .rental-daily-price{display:grid;gap:5px;margin-bottom:20px}.rental-estimate .rental-daily-price>span{font-size:13px;font-weight:600}.rental-estimate .rental-daily-price>strong{font-size:32px;color:#cf002a;line-height:1.2}.rental-estimate .rental-daily-price>small{font-size:11px;font-weight:400;color:#627d9e}.rental-estimate>.rental-total-price{font-size:18px;color:#627d9e;font-weight:500}.rental-estimate>[data-estimate-label]{font-size:12px;color:#627d9e}
.rental-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #e5e8ed}.rental-auth-actions small{grid-column:1/-1;font-size:12px;color:#627d9e}.rental-auth-actions .button{font-size:13px}@media(max-width:500px){.rental-auth-actions{grid-template-columns:1fr}}

/* Compact final step keeps pricing and account actions together. */
.rental-final .rental-wizard>header{padding:12px 22px}
.rental-final .rental-wizard>header h2{margin:3px 0;font-size:22px}
.rental-final .wizard-progress li{padding:8px;font-size:12px}
.rental-final [data-step="3"].active{display:grid;grid-template-columns:1fr;gap:12px;padding:18px 22px}
.rental-final [data-step="3"]>h3{grid-column:1/-1;font-size:19px;margin:0}
.rental-final .service-cards{grid-column:1;grid-row:auto;margin:0;gap:8px}
.rental-final .service-cards .operation-card-body{padding:10px;gap:5px}
.rental-final .service-cards strong{font-size:13px}
.rental-final .service-cards .operation-description{font-size:11px;line-height:1.3}
.rental-final .wizard-final-summary{grid-column:1;grid-row:auto;margin:0;padding:10px 12px}
.rental-final .wizard-final-summary h4{font-size:13px;margin-bottom:5px}
.rental-final .wizard-final-summary span{font-size:12px;line-height:1.5}
.rental-final .rental-estimate{grid-column:1;grid-row:auto;margin:0;padding:12px;align-content:start}
.rental-final .rental-daily-price{margin-bottom:6px;gap:3px}
.rental-final .rental-daily-price>strong{font-size:28px}
.rental-final .rental-estimate [data-estimate-breakdown]{font-size:12px;gap:8px 12px;margin:8px 0}
.rental-total-row{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:12px;color:#627d9e}
.rental-estimate .rental-total-row .rental-total-price{font-size:12px;font-weight:600;color:inherit;text-align:right}
.rental-final [data-estimate-status]{font-size:11px;color:#627d9e;margin-top:5px}
.rental-final .wizard-actions{grid-column:1/-1;margin:0;gap:8px}
.rental-final .wizard-actions button,.rental-final .rental-auth-actions .button{padding:10px 14px;min-height:38px}
.rental-final .rental-auth-actions{grid-column:1/-1;margin:0;padding-top:10px;gap:7px 10px}
.rental-final .rental-auth-actions small{font-size:11px;line-height:1.3}
@media(max-width:600px){
.rental-final .rental-wizard>header{padding:9px 12px}
.rental-final .rental-wizard>header h2{font-size:18px}
.rental-final [data-step="3"].active{grid-template-columns:1fr;gap:8px;padding:12px}
.rental-final .service-cards,.rental-final .wizard-final-summary,.rental-final .rental-estimate{grid-column:1;grid-row:auto}
.rental-final .service-cards{grid-template-columns:1fr 1fr}
.rental-final .rental-estimate{padding:10px}
.rental-final .rental-daily-price>strong{font-size:24px}
.rental-final .rental-estimate [data-estimate-breakdown]{gap:5px 10px;margin:5px 0}
.rental-final .rental-auth-actions{grid-template-columns:1fr 1fr}
.rental-final .rental-auth-actions .button{font-size:11px;padding:8px}
}

@media(max-width:600px){
.rental-final .service-cards .operation-description{display:none}
.rental-final .service-cards .operation-card-body{padding:8px}
.rental-final .service-cards .operation-card-top{gap:5px}
.rental-final .service-cards strong{font-size:12px;line-height:1.3}
.rental-final .wizard-final-summary{padding:8px 10px}
.rental-final .wizard-final-summary span{line-height:1.4}
.rental-final .rental-daily-price>small{font-size:10px;line-height:1.3}
.rental-final [data-step="3"]>h3{font-size:17px}
.rental-final .rental-auth-actions small{font-size:10px}
.rental-final .rental-auth-actions{padding-top:7px}
}

/* The dialog, not the clipped page behind it, owns vertical scrolling. */
.shop-body .rental-dialog{max-height:calc(100dvh - 24px);overflow-y:auto;overflow-x:hidden;scrollbar-gutter:auto;overscroll-behavior:contain}
.rental-wizard>header>div{min-width:0}
.rental-wizard>header h2,.wizard-progress li,.operation-card-top strong{overflow-wrap:anywhere}
.rental-wizard .dialog-close{flex-shrink:0}
.wizard-actions{position:sticky;bottom:0;z-index:5;background:#fff;padding:12px 0;flex-wrap:wrap;border-top:1px solid #e3e7ed}
.wizard-actions button{max-width:100%;white-space:normal}
@media(max-width:430px){.branch-cards{grid-template-columns:1fr}.wizard-progress li{min-width:0;hyphens:auto}}

.rental-final [data-step="3"]>.rental-summary-heading{margin-top:10px;padding-top:18px;border-top:1px solid #e1e6ed}.rental-final .premium-price-note{display:block;font-size:11px;line-height:1.5;color:#64748b;margin:0 0 4px}.rental-final .service-cards .premium-cover-brand{gap:6px}

/* Master detail: selection, order steps and model comparison. */
.product-intro p{margin:0 0 10px}.product-intro p:last-child{margin-bottom:0}
.product-order-workflow{list-style:none;counter-reset:order-step;padding:0;margin:22px 0;display:grid;gap:13px}
.product-order-workflow li{counter-increment:order-step;display:grid;grid-template-columns:28px 1fr;gap:3px 11px;font-size:12px;line-height:1.55}
.product-order-workflow li::before{content:counter(order-step);grid-row:1/3;display:grid;place-items:center;align-self:start;width:28px;height:28px;border-radius:50%;background:#edf2f7;color:#28496e;font-weight:700}
.product-order-workflow strong{font-size:14px;color:#071a32}.product-order-workflow span{grid-column:2;color:#58718b}
.product-summary .product-consultation{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;padding:10px 14px;background:#f4f7fa;border:1px solid #d5dfed;border-radius:10px}
.product-consultation h2{flex:1 1 190px;font-size:14px;line-height:1.4;margin:0}
.product-consultation-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px}
.product-consultation .product-consultation-phone,.product-consultation .product-adam-link{display:inline-flex;align-items:center;gap:7px;min-height:36px;font-size:13px;line-height:1.3;white-space:nowrap}
.product-consultation-phone{font-weight:750}.product-adam-link{border:0;padding:0;background:none;color:#28496e;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.product-consultation svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.product-consultation :is(a,button):focus-visible{outline:2px solid #28496e;outline-offset:3px;border-radius:3px}
.master-model-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:24px}
.master-model-card{display:grid;grid-template-columns:130px minmax(0,1fr);gap:20px;border:1px solid #d5dfed;border-radius:12px;padding:22px;background:#fff;align-items:start}
.master-model-card:not(:has(img)){grid-template-columns:1fr}.master-model-card img{width:100%;height:130px;object-fit:contain}.master-model-card h3{margin:0 0 12px;font-size:19px}.master-model-card p,.master-model-card li{font-size:14px;line-height:1.65}.master-model-card ul{padding-left:18px;color:#58718b}.master-model-more{font-weight:650;font-size:14px}
.master-premium-section{display:grid;grid-template-columns:1fr 1fr;gap:24px}.master-premium-section article{padding:26px;border:1px solid #d5dfed;border-radius:12px;background:#f7f9fc}.master-premium-section h2{margin-top:0}.master-premium-section p,.master-rental-included p{line-height:1.7}.master-service-notice{font-size:13px;color:#62748a}
@media(max-width:1000px){.master-model-cards{grid-template-columns:1fr}}
@media(max-width:650px){.master-premium-section{grid-template-columns:1fr}.master-model-card{grid-template-columns:85px minmax(0,1fr);gap:14px;padding:16px}.master-model-card img{height:95px}.master-model-card h3{font-size:17px}}
@media(max-width:430px){.master-model-card{grid-template-columns:1fr}.master-model-card img{height:150px}.master-model-card p,.master-model-card li{font-size:13px}}

/* Typical models continue the left column below the reference gallery. */
.product-gallery > .master-model-section{width:100%;max-width:none;box-sizing:border-box;margin:28px 0 0;padding:0;background:none;border:0;box-shadow:none}
.product-gallery > .master-model-section > h2{font-size:22px;margin:0 0 12px}
.product-gallery > .master-model-section > p{font-size:14px;line-height:1.65}
@media(max-width:760px){.product-gallery{display:contents}.product-gallery-media{order:1;min-width:0}.product-summary{order:2}.product-gallery > .master-model-section{order:3;margin-top:0}}

/* Shared page edges for the hero, included equipment, services and accessories. */
.product-detail-sections{display:grid;gap:24px}
.product-detail-sections > :is(.content-block,.specs){box-sizing:border-box;width:100%;max-width:none;margin:0}

.master-rental-included .rental-included-list{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:24px 0}.rental-included-list li{min-width:0;padding-left:15px;border-left:3px solid #cf002a}.rental-included-list strong{display:block;font-size:15px;line-height:1.5;color:#172b43;margin-bottom:6px}.rental-included-list span{display:block;font-size:13px;line-height:1.7;color:#62748a}.rental-fuel-policy{padding:20px 22px;background:#f1f5f9;border:1px solid #dce2e9;border-radius:8px}.rental-fuel-policy h3{margin:0 0 8px;font-size:16px;line-height:1.5;color:#172b43}.master-rental-included .rental-fuel-policy p{margin:0;font-size:14px;color:#526174}@media(max-width:650px){.master-rental-included .rental-included-list{grid-template-columns:1fr;gap:18px}.rental-fuel-policy{padding:17px}}
