/* Product detail and category pages: shared card design, scoped away from checkout and overlays. */
/* Folding dock shelters share the product page appearance on both site versions. */
.hanler-product-page .shelter-panel { background:#fff; border:1px solid #dce6ed; border-radius:16px; padding:24px; }
/* SpeedRoll and fire-protection product examples, shared by both site versions. */
.hanler-product-page .gate-catalog-intro { margin:0 0 8px; color:var(--hd-muted); }
.hanler-product-page .gate-catalog-note { margin:0 0 22px; padding:12px 16px; background:#f0f7fb; border-radius:8px; font-size:14px; }
.hanler-product-page .gate-product-card .product-item_img img { display:block; width:100%; height:100%; object-fit:contain; }
.hanler-product-page .gate-product-card h3.product-item_name { margin:0; font-size:16px; }
.hanler-product-page .gate-product-card .product-item_params p { margin:0 0 8px; }
.hanler-product-page .gate-card-variant { color:var(--hd-blue); font-weight:600; }
.hanler-product-page .gate-card-specs { margin:0 0 10px; }
.hanler-product-page .gate-card-specs div { margin:0 0 6px; }
.hanler-product-page .gate-card-specs dt { color:var(--hd-muted); }
.hanler-product-page .gate-card-specs dd { margin:0; }
.hanler-product-page .gate-card-price-note { font-size:12px; line-height:1.5; color:var(--hd-muted); margin:8px 0 12px; }
.hanler-product-page .gate-card-details { margin:0; border-top:1px solid var(--hd-line); font-size:13px; }
.hanler-product-page .gate-card-details > summary { min-height:44px; padding:12px 14px; color:var(--hd-blue); cursor:pointer; font-weight:600; }
.hanler-product-page .gate-card-details-body { padding:0 14px 14px; }
.hanler-product-page .gate-card-breakdown { margin:0; }
.hanler-product-page .gate-card-breakdown div { padding:8px 0; border-bottom:1px solid var(--hd-line); }
.hanler-product-page .gate-card-breakdown dd { margin:4px 0 0; font-variant-numeric:tabular-nums; font-weight:600; }
.hanler-product-page .gate-card-total { margin:12px 0; }
.hanler-product-page .gate-card-total strong { display:block; }
.hanler-product-page .gate-card-consult { width:100%; min-height:44px; padding:10px; background:var(--hd-blue); color:white; border:0; border-radius:8px; font:inherit; cursor:pointer; }
.hanler-product-page .gate-catalog-options { margin-top:24px; border:1px solid var(--hd-line); border-radius:10px; padding:0 16px; }
.hanler-product-page .gate-catalog-options > summary { padding:16px 0; color:var(--hd-blue); font-weight:600; cursor:pointer; }
.hanler-product-page .gate-catalog-options > p { color:var(--hd-muted); font-size:13px; }
.hanler-product-page .gate-catalog-options dl { margin:0 0 16px; }
.hanler-product-page .gate-catalog-options dl div { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:12px 0; border-bottom:1px solid var(--hd-line); font-size:14px; }
.hanler-product-page .gate-catalog-options dd { margin:0; text-align:right; flex-shrink:0; font-variant-numeric:tabular-nums; }
.hanler-product-page .gate-catalog-options small { display:block; color:var(--hd-muted); font-size:12px; }
.hanler-product-page .gate-product-catalog :is(summary,button):focus-visible { outline:2px solid var(--hd-blue); outline-offset:-2px; }
body.mobile .hanler-product-page .gate-product-card h3.product-item_name { font-size:14px; }
body.mobile .hanler-product-page .gate-card-details > summary { padding:12px 10px; }
body.mobile .hanler-product-page .gate-card-details-body { padding:0 10px 12px; }
body.mobile .hanler-product-page .gate-catalog-options dl div { display:block; }
body.mobile .hanler-product-page .gate-catalog-options dd { text-align:left; margin-top:6px; }
.hanler-product-page .shelter-intro { color:#607483; font-size:15px; line-height:1.6; margin:0 0 20px; }
.hanler-product-page .shelter-price-scroll { max-width:100%; overflow-x:auto; }
.hanler-product-page .shelter-price-table { width:100%; border-collapse:collapse; font-size:14px; }
.hanler-product-page .shelter-price-table caption { text-align:left; color:#607483; padding:0 0 12px; }
.hanler-product-page .shelter-price-table :is(th,td) { padding:14px 10px; border:1px solid #dce6ed; text-align:center; white-space:nowrap; }
.hanler-product-page .shelter-price-table th { background:#eef5f9; font-weight:600; }
.hanler-product-page .shelter-price-table a { color:#0078be; text-decoration:underline; }
.hanler-product-page .shelter-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.hanler-product-page .shelter-card { display:flex; flex-direction:column; min-width:0; border:1px solid #dce6ed; border-radius:12px; overflow:hidden; scroll-margin-top:110px; }
.hanler-product-page .shelter-card:target { outline:3px solid #70c2ee; outline-offset:3px; }
.hanler-product-page .shelter-card-image { padding:16px; aspect-ratio:4/3; display:flex; align-items:center; justify-content:center; background:#f7fafc; }
.hanler-product-page .shelter-card-image :is(img,picture) { display:block; max-width:100%; max-height:100%; width:100%; height:100%; object-fit:contain; }
.hanler-product-page .shelter-card-body { display:flex; flex-direction:column; flex:1; padding:16px; font-size:14px; }
.hanler-product-page .shelter-card h3 { font-size:17px; line-height:1.4; margin:0 0 8px; }
.hanler-product-page .shelter-article { font-size:12px; color:#607483; overflow-wrap:anywhere; margin:0 0 14px; }
.hanler-product-page .shelter-card dl { margin:0 0 12px; color:#607483; }
.hanler-product-page .shelter-card dl div { display:flex; justify-content:space-between; gap:8px; margin:4px 0; }
.hanler-product-page .shelter-card dd { margin:0; color:#172f40; }
.hanler-product-page .shelter-card-details { margin:0 0 14px; line-height:1.5; color:#607483; }
.hanler-product-page .shelter-card-details summary { cursor:pointer; color:#0078be; }
.hanler-product-page .shelter-card-details p { margin:8px 0; }
.hanler-product-page .shelter-card-price { margin:auto 0 14px; padding-top:12px; color:#172f40; font-size:18px; font-weight:600; }
.hanler-product-page .shelter-card-button { width:100%; min-height:44px; border:1px solid #dce6ed; border-radius:8px; padding:10px 8px; background:#f0f7fb; color:#0078be; font-size:14px; line-height:1.4; }
@media (max-width:1100px) { .hanler-product-page .shelter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) {
    .hanler-product-page .shelter-panel { padding:18px 14px; }
    .hanler-product-page .shelter-grid { grid-template-columns:minmax(0,1fr); }
    .hanler-product-page .shelter-card-image { aspect-ratio:16/9; }
    .hanler-product-page .shelter-price-table { font-size:12px; }
    .hanler-product-page .shelter-price-table :is(th,td) { padding:12px 6px; }
}
.hanler-product-page { --hd-ink:#172f40; --hd-muted:#607483; --hd-blue:#0078be; --hd-line:#dce6ed; --hd-page:#f2f6f9; background:var(--hd-page); color:var(--hd-ink); padding-bottom:32px; line-height:1.5; }
.hanler-product-page *, .hanler-product-page *::before, .hanler-product-page *::after { box-sizing:border-box; }
.hanler-product-page h1 { line-height:1.2; letter-spacing:-.025em; }
.hanler-product-page h2, .hanler-product-page h3 { color:var(--hd-ink); line-height:1.3; text-transform:none; }
.hanler-product-page h2 { font-size:clamp(22px,1.8vw,30px); margin:0 0 18px; font-weight:600; }
.hanler-product-page a { text-underline-offset:3px; }
.hanler-product-page button { font-family:inherit; cursor:pointer; }
.hanler-product-page :is(button,a,summary,select):focus-visible { outline:3px solid #70c2ee; outline-offset:3px; }
.hanler-product-page > .row:not(.slider-block):not(.ptw_img):not(.ptw):not(.about):not(.contacts-map-i):not(:has(.ptw_img)):not(:has(.breadcrumb, .olbreadcrumb)) { margin-top:24px; margin-bottom:24px; }
.hanler-product-page .hd-old-tabs { display:none!important; }
.hanler-product-page .ptw { background:#fff; padding:24px 0; margin-bottom:24px; }
.hanler-product-page .ptw_title h1 { font-size:clamp(27px,2.6vw,44px); }
.hanler-product-page .ptw_description { color:var(--hd-muted); }
.hanler-product-page .ptw_params_title { color:var(--hd-ink); font-weight:600; }
.hanler-product-page .ptw_params_desc, .hanler-product-page .ptw_gifts { color:var(--hd-muted); }
.hanler-product-page .ptw .btn { border-radius:9px; background:var(--hd-blue); color:#fff; text-transform:none; }
.hanler-product-page .breadcrumb { font-size:13px; color:var(--hd-muted); line-height:1.5; margin:10px 0; }
.hanler-product-page .breadcrumb a { color:var(--hd-muted); }
.hanler-product-page .hd-catalog-section > .col, .hanler-product-page .hd-price-section > .col { background:#fff; border:1px solid var(--hd-line); border-radius:16px; padding:24px; }
.hanler-product-page .ui-product-item_blocks { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0; width:100%; }
.hanler-product-page .ui-product-item_blocks::after, .hanler-product-page .ui-product-item_blocks::before { display:none; }
.hanler-product-page .ui-product-item_block { display:flex; flex-direction:column; width:auto!important; margin:0!important; padding:0!important; border:1px solid var(--hd-line); border-radius:12px; overflow:hidden; background:#fff; min-width:0; box-shadow:none; }
.hanler-product-page .ui-product-item_block.none, .hanler-product-page .product-item_block-hidden.none { display:none!important; }
.hanler-product-page .product-item_img { width:100%; height:auto; aspect-ratio:4/3; background-size:contain; background-position:center; background-repeat:no-repeat; margin:0; border:0; }
.hanler-product-page .product-item_name { font-size:16px; line-height:1.4; font-weight:600; color:var(--hd-ink); padding:12px 14px 8px; height:auto; }
.hanler-product-page .product-item_params { font-size:13px; line-height:1.45; color:var(--hd-muted); padding:0 14px 12px; height:auto; flex:1; }
.hanler-product-page .product-item_params .row { margin-bottom:6px; }
.hanler-product-page .product-item_params .col { float:none; width:auto; display:inline; }
.hanler-product-page .product-item_params .col + .col { margin-left:4px; }
.hanler-product-page .product-item_params b { font-weight:400; }
.hanler-product-page .hd-item-options { font-size:inherit; margin:8px 0 0; }
.hanler-product-page .product-item_price { height:auto; padding:0 14px; margin-top:auto; background:transparent; }
.hanler-product-page .product-item_price_num { font-size:20px; color:var(--hd-ink); line-height:1.3; font-weight:600; white-space:nowrap; }
.hanler-product-page .product-item_price_num b { display:none; }
.hanler-product-page .product-item_btn { padding:12px 14px 14px; height:auto; }
.hanler-product-page .product-item_btn_basket { width:100%; min-height:44px; border:1px solid var(--hd-line); border-radius:8px; background:#f0f7fb; color:var(--hd-blue); padding:10px 8px; font-size:14px; line-height:1.3; }
/* The button owns the rounded border; the legacy wrapper must not clip it. */
.hanler-product-page .product-item_block-hidden { grid-column:1/-1; width:100%; margin:0; height:auto; border:0; border-radius:9px; background:transparent; overflow:visible; }
.hanler-product-page .opl_more_item { width:100%; min-height:46px; border:1px solid var(--hd-blue); border-radius:9px; padding:12px; font-size:14px; color:var(--hd-blue); background:#fff; }
.hanler-product-page .shop-sort-type { font-size:14px; }
.hanler-product-page .hd-price-scroll { width:100%; overflow-x:auto; margin:0; }
.hanler-product-page .hd-full-price-table { border-collapse:collapse; width:100%; font-size:12px; }
.hanler-product-page .hd-full-price-table :is(th,td) { padding:10px 8px; border:1px solid var(--hd-line); font-variant-numeric:tabular-nums; white-space:nowrap; }
.hanler-product-page .hd-full-price-table th { background:#eef5f9; color:var(--hd-ink); }
.hanler-product-page .hd-full-price-table td { background:white; color:var(--hd-ink); }
.hanler-product-page .hd-prices { display:block; }
.hanler-product-page .hd-full-price-table[hidden] { display:none; }
.hanler-product-page .hd-price-intro { margin:0 0 20px; font-size:13px; line-height:1.5; color:var(--hd-muted); }
.hanler-product-page .hd-price-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-bottom:20px; }
.hanler-product-page .hd-price-label { display:block; min-width:0; margin:0; font-size:13px; line-height:1.5; color:var(--hd-muted); }
.hanler-product-page .hd-price-label select { display:block; min-height:46px; width:100%; margin:7px 0 0; padding:10px 12px; border:1px solid var(--hd-line); border-radius:8px; background:#fff; color:var(--hd-ink); font:400 16px/1.3 'Open Sans',sans-serif; }
.hanler-product-page .hd-price-table { width:100%; border:0; border-collapse:separate; border-spacing:0; font-size:14px; color:var(--hd-ink); }
.hanler-product-page .hd-price-section > .col > .row:has(> h2) { margin:0; }
.hanler-product-page .hd-price-section h2 { padding:0; margin-bottom:8px; }
.hanler-product-page .hd-price-caption { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.hanler-product-page .hd-price-table :is(th,td) { height:auto; border:0; border-bottom:1px solid var(--hd-line); text-align:left; font-variant-numeric:tabular-nums; }
.hanler-product-page .hd-price-table th { padding:10px 12px; font-size:12px; line-height:1.5; font-weight:400; color:var(--hd-muted); background:var(--hd-page); }
.hanler-product-page .hd-price-table td { padding:5px; background:#fff; }
.hanler-product-page .hd-price-table thead th:first-child { border-top-left-radius:8px; }
.hanler-product-page .hd-price-table thead th:last-child { border-top-right-radius:8px; }
.hanler-product-page .hd-price-cell { display:block; width:100%; min-height:44px; padding:8px 6px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--hd-ink); font:400 14px/1.5 'Open Sans',sans-serif; text-align:left; white-space:nowrap; cursor:pointer; }
.hanler-product-page .hd-price-cell:hover { background:var(--hd-page); }
.hanler-product-page .hd-price-cell[aria-pressed="true"] { background:#f0f7fb; border-color:var(--hd-blue); color:var(--hd-blue); }
.hanler-product-page :is(.hd-price-cell,.hd-price-label select):focus-visible { outline:2px solid var(--hd-blue); outline-offset:2px; }
.hanler-product-page .hd-price-summary { margin:18px 0 0; padding-top:16px; border-top:1px solid var(--hd-line); color:var(--hd-ink); font-size:14px; line-height:1.6; font-variant-numeric:tabular-nums; }
.hanler-product-page .product-params-menu { background:transparent; height:auto; margin:0; border:0; }
.hanler-product-page .hd-details { display:block; clear:both; border:1px solid var(--hd-line); border-radius:12px; background:#fff; color:var(--hd-ink); margin:0 0 10px; overflow:hidden; }
.hanler-product-page .hd-details > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:60px; padding:18px 20px; font-size:17px; line-height:1.4; font-weight:600; cursor:pointer; list-style:none; }
.hanler-product-page .hd-details > summary::-webkit-details-marker { display:none; }
.hanler-product-page .hd-details > summary::after { content:'+'; color:var(--hd-blue); font-size:24px; line-height:1; font-weight:400; flex:none; }
.hanler-product-page .hd-details[open] > summary::after { content:'−'; }
.hanler-product-page .hd-details[open] > summary { border-bottom:1px solid var(--hd-line); }
.hanler-product-page .hd-details:not([open]) > :not(summary) { display:none!important; }
.hanler-product-page .hd-details[open] > .hd-detail-content { display:block!important; float:none; width:100%; padding:20px; margin:0; overflow:auto; }
.hanler-product-page .hd-detail-content::after { content:''; display:block; clear:both; }
.hanler-product-page .hd-detail-content img { max-width:100%; height:auto; }
/* Technical content follows the width of its disclosure, including legacy mobile markup. */
.hanler-product-page .hd-detail-content { container:product-details / inline-size; font-size:clamp(14px,.9vw,17px)!important; line-height:1.6!important; }
.hanler-product-page .hd-detail-content .hd-detail-layout { display:block; float:none; width:100%; min-width:0; margin:0; padding:0; }
.hanler-product-page .hd-detail-grid { --hd-detail-columns:3; display:grid; grid-template-columns:repeat(var(--hd-detail-columns),minmax(0,1fr)); gap:clamp(12px,1vw,20px); width:100%; margin:0 0 20px; clear:both; }
.hanler-product-page .hd-detail-grid:last-child { margin-bottom:0; }
.hanler-product-page .hd-detail-grid-pair { --hd-detail-columns:2; }
.hanler-product-page .hd-detail-grid-single { --hd-detail-columns:1; }
.hanler-product-page .hd-detail-grid > .hd-detail-card { display:flex; flex-direction:column; float:none; width:auto!important; min-width:0; margin:0!important; padding:clamp(14px,1.1vw,22px); border:1px solid var(--hd-line); border-radius:12px; background:#f7fafc; color:var(--hd-ink); font-size:inherit; line-height:inherit; overflow-wrap:anywhere; }
.hanler-product-page .hd-detail-card :is(.row,.col) { display:block; float:none; width:100%; min-width:0; height:auto; margin:0; padding:0; font-size:inherit!important; line-height:inherit!important; }
.hanler-product-page .hd-detail-card :is(.product-parametr-block-name,.product-parametr-block-desc,.product-parametr-block-color-name,.product-params-block-title,.product-parametr-block-n,p,li) { font-size:inherit!important; line-height:1.6!important; text-align:left; margin:0; padding:0; }
.hanler-product-page .hd-detail-card :is(.product-parametr-block-name,.product-params-block-title) { font-weight:600; }
.hanler-product-page .hd-detail-card :is(.product-parametr-block-img,.product-params-block-img,.product-parametr-block-p) { padding:0; margin:0 0 14px; }
.hanler-product-page .hd-detail-card img { display:block; width:100%; height:clamp(160px,13vw,240px); object-fit:contain; object-position:center; border-radius:8px; }
.hanler-product-page .hd-detail-card .product-parametr-block-color-type { height:clamp(64px,6vw,110px); margin:0 0 12px; border:1px solid var(--hd-line); border-radius:8px; background-size:cover; }
.hanler-product-page .hd-detail-card .product-parametr-block-check { position:absolute; top:12px; right:12px; width:auto; font-size:24px; }
.hanler-product-page .hd-detail-content :is(.product-desc-title-param,.product-parametr-title) { margin:0 0 16px; padding:0; font-size:clamp(17px,1.1vw,21px); line-height:1.4; }
.hanler-product-page .hd-detail-content .hd-detail-grid + .col:has(.product-desc-title-param) { width:100%; margin:8px 0 0; }
@container product-details (max-width:1099px) {
 .hanler-product-page .hd-detail-grid { --hd-detail-columns:2; }
 .hanler-product-page .hd-detail-grid-single { --hd-detail-columns:1; }
}
@container product-details (max-width:620px) {
 .hanler-product-page .hd-detail-grid { --hd-detail-columns:1; }
 .hanler-product-page .hd-detail-grid-colours { --hd-detail-columns:2; }
 .hanler-product-page .hd-detail-grid-single { --hd-detail-columns:1; }
}
body.mobile .hanler-product-page .hd-detail-card { font-size:14px; }
body.mobile .hanler-product-page .hd-detail-card img { height:190px; }
.hanler-product-page .hd-faq-answer { padding:20px; font-size:15px; line-height:1.65; }
.hanler-product-page .faq { background:transparent; }
.hanler-product-page .faq .hd-details > summary { font-size:16px; }
.hanler-product-page .mobile-lead-section { width:91.6667%; margin:24px auto; padding:0; background:transparent; clear:both; }
.hanler-product-page .mobile-lead-card { background:#fff; border:1px solid var(--hd-line); border-radius:16px; padding:28px; max-width:none; color:var(--hd-ink); }
.hanler-product-page .mobile-lead-title { margin:0 0 8px; font-size:26px; font-weight:600; line-height:1.3; }
.hanler-product-page .mobile-lead-intro { margin:0 0 20px; color:var(--hd-muted); font-size:15px; }
.hanler-product-page :is(.mobile-lead-submit,.mobile-lead-callback) { width:auto; display:inline-block; min-height:46px; margin:0 10px 0 0; padding:12px 24px; border:1px solid var(--hd-blue); border-radius:9px; font-size:15px; line-height:1.4; text-align:center; }
.hanler-product-page .mobile-lead-submit { background:var(--hd-blue); color:#fff; }
.hanler-product-page .mobile-lead-callback { background:#fff; color:var(--hd-blue); }
.hanler-product-page .mobile-lead-contact { border-top:1px solid var(--hd-line); margin-top:22px; padding-top:18px; }
.hanler-product-page .mobile-lead-contact-heading { display:flex; flex-wrap:wrap; align-items:center; gap:8px 20px; font-size:14px; color:var(--hd-muted); }
.hanler-product-page .mobile-lead-phone { font-size:22px; font-weight:600; color:var(--hd-ink); text-decoration:none; }
.hanler-product-page .mobile-lead-work-status { margin-top:10px; font-size:13px; line-height:1.5; color:var(--hd-muted); }
.hanler-product-page .hd-product-help { display:grid; grid-template-columns:minmax(0,35fr) minmax(0,65fr); gap:16px; }
.hanler-product-page .hd-product-help > .mobile-lead-card { min-width:0; }
.hanler-product-page .hd-product-help h2 { padding:0; }
.hanler-product-page .hd-product-help :is(.mobile-lead-submit,.mobile-lead-callback) { display:block; width:100%; margin:0; padding:12px 14px; }
.hanler-product-page .hd-product-help .mobile-lead-callback { margin-top:10px; }
.hanler-product-page .hd-product-help .mobile-lead-contact-heading { display:grid; gap:6px; }
.hanler-product-page .hd-product-help .mobile-lead-phone { font-size:clamp(18px,1.6vw,22px); }
.hanler-product-page .hd-measurement-card { min-width:0; background:#fff; border:1px solid var(--hd-line); border-radius:16px; padding:28px; }
.hanler-product-page .hd-measurement-card h2 { margin:0 0 8px; font-size:26px; }
.hanler-product-page .hd-measurement-intro { margin:0 0 24px; color:var(--hd-muted); font-size:15px; line-height:1.5; }
.hanler-product-page .hd-measurement-list { display:grid; gap:24px; margin:0; padding:0; list-style:none; }
.hanler-product-page .hd-measurement-list li { display:flex; align-items:flex-start; gap:14px; margin:0; padding:0; }
.hanler-product-page .hd-measurement-list h3 { margin:0 0 5px; font-size:16px; font-weight:600; line-height:1.4; }
.hanler-product-page .hd-measurement-list p { margin:0; color:var(--hd-muted); font-size:14px; line-height:1.55; }
.hanler-product-page .hd-measurement-icon { display:grid; place-items:center; flex:0 0 40px; width:40px; height:40px; border-radius:10px; color:var(--hd-blue); background:#edf6fb; }
.hanler-product-page .hd-measurement-icon svg { display:block; width:22px; height:22px; }
.hanler-product-page .time-status { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; }
.hanler-product-page .time-status.active { background:#6eae4f; }
.hanler-product-page .time-status.no-active { background:#9aa7b0; }
.hanler-product-page .hanler-advantages { background:transparent; padding-top:24px; padding-bottom:24px; }
.hanler-product-page .hanler-advantages__card { background:white; border:1px solid var(--hd-line); border-radius:12px; }
.hanler-product-page .hd-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; width:100%; margin:0 0 24px; }
.hanler-product-page .hd-related-grid::before, .hanler-product-page .hd-related-grid::after { display:none; }
.hanler-product-page .hd-related-grid > .col { width:auto!important; margin:0!important; min-width:0; }
.hanler-product-page .hd-related-card { display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid var(--hd-line); border-radius:12px; overflow:hidden; color:var(--hd-ink); text-decoration:none; }
.hanler-product-page .hd-related-card .products-table-i { width:100%; height:auto; aspect-ratio:16/10; background-size:cover; background-position:center; margin:0; }
.hanler-product-page .hd-related-card .products-table-t { height:auto; min-height:0; padding:14px; margin:0; font-size:15px; line-height:1.4; color:var(--hd-ink); background:transparent; text-align:left; }
.hanler-product-page .product-action { background:transparent; padding:0; }
.hanler-product-page .product-action > .col > .gutters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; width:100%; margin:0; }
.hanler-product-page .product-action > .col > .gutters::before, .hanler-product-page .product-action > .col > .gutters::after { display:none; }
.hanler-product-page .product-action > .col > .gutters > .col { width:auto; margin:0; }
.hanler-product-page .product-action > .col > .gutters > .col:first-child:has(h2) { grid-column:1/-1; }
.hanler-product-page .product-action-item-block { border:1px solid var(--hd-line); border-radius:12px; background:#fff; height:100%; margin:0; overflow:hidden; }
.hanler-product-page .product-action-item-img { background:none!important; height:auto; padding:22px; min-height:100%; }
.hanler-product-page .product-action-item-text { position:static; font-size:19px; line-height:1.35; color:var(--hd-ink); margin:0 0 12px; padding:0; }
.hanler-product-page .product-action-item-desc { position:static; font-size:14px; line-height:1.6; color:var(--hd-muted); margin:0; padding:0; }
.hanler-product-page .product-action-item-btn { position:static; display:inline-block; width:auto; min-height:44px; margin:16px 0 0; padding:10px 12px; font-size:14px; color:var(--hd-blue); background:#f0f7fb; border:1px solid var(--hd-line); border-radius:8px; }
.hanler-product-page .product-image img { border-radius:12px 12px 0 0; }
.hanler-product-page .video_block-play { border-radius:12px; }
.hanler-product-page .product-images-preview { padding:12px 0; }
.hanler-product-page .product-image-preview { border-radius:8px; overflow:hidden; }
body.mobile .hanler-product-page { font-size:15px; padding-bottom:20px; }
body.mobile .hanler-product-page > .row:not(.slider-block):not(.ptw_img):not(.ptw):not(.about):not(.contacts-map-i):not(:has(.ptw_img)):not(:has(.breadcrumb, .olbreadcrumb)) { margin-top:18px; margin-bottom:18px; }
body.mobile .hanler-product-page h1 { font-size:26px; }
body.mobile .hanler-product-page h2 { font-size:22px; }
body.mobile .hanler-product-page h3 { font-size:18px; }
body.mobile .hanler-product-page .ptw_img, body.mobile .hanler-product-page .ptw_img img { width:100%; height:auto; display:block; }
body.mobile .hanler-product-page .ptw_img img { aspect-ratio:2/1; object-fit:cover; }
body.mobile .hanler-product-page .ptw { padding:8px 0 22px; margin:0 0 18px; }
body.mobile .hanler-product-page .ptw_title h1 { font-size:26px; line-height:1.2; margin:0; }
body.mobile .hanler-product-page .ptw_description { font-size:15px; line-height:1.5; margin-top:10px; }
body.mobile .hanler-product-page .ptw_params { margin:22px 0; }
body.mobile .hanler-product-page .ptw_params > .col { margin-bottom:18px; }
body.mobile .hanler-product-page .ptw_params > .col:last-child { margin-bottom:0; }
body.mobile .hanler-product-page .ptw_params_title { font-size:15px; line-height:1.4; }
body.mobile .hanler-product-page .ptw_params_desc { font-size:13px; line-height:1.45; margin-top:4px; }
body.mobile .hanler-product-page .ptw_icons { width:30px; margin-right:12px; }
body.mobile .hanler-product-page .ptw_icons img { width:28px; height:28px; }
body.mobile .hanler-product-page .ptw .btn { font-size:15px; min-height:46px; padding:12px; }
body.mobile .hanler-product-page .ptw_gifts { font-size:12px; line-height:1.5; margin-top:10px; }
body.mobile .hanler-product-page .breadcrumb { font-size:12px; }
body.mobile .hanler-product-page .hd-catalog-section > .col, body.mobile .hanler-product-page .hd-price-section > .col { padding:20px 12px; }
body.mobile .hanler-product-page .ui-product-item_blocks { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.mobile .hanler-product-page .product-item_name { font-size:14px; padding:10px 10px 8px; }
body.mobile .hanler-product-page .product-item_params { padding:0 10px 10px; font-size:12px; }
body.mobile .hanler-product-page .product-item_price { padding:0 10px; }
body.mobile .hanler-product-page .product-item_price_num { font-size:17px; }
body.mobile .hanler-product-page .product-item_btn { padding:10px; }
body.mobile .hanler-product-page .product-item_btn_basket { font-size:13px; }
body.mobile .hanler-product-page .hd-prices { display:block; }
body.mobile .hanler-product-page .hd-full-price-table { display:none; }
body.mobile .hanler-product-page .hd-details > summary { font-size:15px; padding:16px; min-height:56px; }
body.mobile .hanler-product-page .hd-details[open] > .hd-detail-content { padding:16px; font-size:14px; line-height:1.55; }
body.mobile .hanler-product-page .hd-detail-content :is(p, .product-desc, .product-desc-title-param) { font-size:14px; line-height:1.55; }
body.mobile .hanler-product-page .hd-faq-answer { padding:16px; font-size:14px; }
body.mobile .hanler-product-page .mobile-lead-section { width:91.6667%; padding:0; margin:18px auto; }
body.mobile .hanler-product-page .mobile-lead-card { padding:20px; }
body.mobile .hanler-product-page .mobile-lead-title { font-size:23px; }
body.mobile .hanler-product-page .mobile-lead-intro { font-size:14px; margin-bottom:18px; }
body.mobile .hanler-product-page :is(.mobile-lead-submit,.mobile-lead-callback) { display:block; width:100%; margin:0; font-size:15px; }
body.mobile .hanler-product-page .mobile-lead-callback { margin-top:10px; }
body.mobile .hanler-product-page .mobile-lead-contact-heading { display:grid; gap:4px; }
body.mobile .hanler-product-page .mobile-lead-phone { font-size:22px; }
body.mobile .hanler-product-page .hd-product-help { grid-template-columns:minmax(0,1fr); gap:12px; }
body.mobile .hanler-product-page .hd-measurement-card { padding:20px; }
body.mobile .hanler-product-page .hd-measurement-card h2 { font-size:23px; }
body.mobile .hanler-product-page .hd-measurement-intro { font-size:14px; margin-bottom:20px; }
body.mobile .hanler-product-page .hd-measurement-list { gap:20px; }
body.mobile .hanler-product-page .hd-measurement-list li { gap:12px; }
body.mobile .hanler-product-page .hd-measurement-list h3 { font-size:16px; }
body.mobile .hanler-product-page .hd-price-controls { gap:10px; }
body.mobile .hanler-product-page .hd-price-label select { padding:10px 8px; font-size:14px; }
@media (max-width:360px) {
    .hanler-product-page .hd-price-controls { grid-template-columns:minmax(0,1fr); }
}
body.mobile .hanler-product-page .hd-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.mobile .hanler-product-page .hd-related-card .products-table-t { font-size:14px; padding:12px; }
body.mobile .hanler-product-page .product-action > .col > .gutters { grid-template-columns:minmax(0,1fr); gap:12px; }
body.mobile .hanler-product-page .product-action-item-img { padding:20px; }
@media (max-width:350px) {
 body.mobile .hanler-product-page .ui-product-item_blocks { grid-template-columns:minmax(0,1fr); }
 body.mobile .hanler-product-page .ui-product-item_block { display:grid; grid-template-columns:82px minmax(0,1fr); }
 body.mobile .hanler-product-page .product-item_img { grid-column:1; grid-row:1/4; aspect-ratio:1; margin-top:12px; }
 body.mobile .hanler-product-page .ui-product-item_block > :not(.product-item_img) { grid-column:2; }
 body.mobile .hanler-product-page .hd-related-card .products-table-t { font-size:13px; }
}

/* Legacy row layouts use flex and absolutely positioned card controls. */
.hanler-product-page .hd-details { width:100%; }
.hanler-product-page .hd-panel-stack { display:block; }
.hanler-product-page .hd-panel-stack.col-10 { width:100%; }
.hanler-product-page .product-item_block-hidden { position:static; min-height:0; padding:0; }
.hanler-product-page .opl_more_item { position:static; height:auto; line-height:1.4; display:block; }
.hanler-product-page .product-action-item-img::before { display:none; }
.hanler-product-page .product-action-i { background:#fff!important; border:1px solid var(--hd-line); border-radius:12px; padding:22px; height:auto; }
.hanler-product-page .product-action-i::before { display:none; }
.hanler-product-page .product-action-i-title { font-size:19px; line-height:1.35; color:var(--hd-ink); margin:0 0 12px; }
.hanler-product-page .product-action-i-desc { font-size:14px; line-height:1.6; color:var(--hd-muted); }
.hanler-product-page .product-action-i-button { position:static; margin-top:16px; min-height:44px; font-size:14px; line-height:1.4; padding:10px 12px; border-radius:8px; color:var(--hd-blue); background:#f0f7fb; border:1px solid var(--hd-line); }
body.mobile .hanler-product-page .hd-tech-section > .hd-panel-stack { width:91.6667%; margin:0 auto; }

.hanler-product-page .hd-tech-heading { width:91.6667%; margin:0 auto 18px; }
/* Align promotions and carry the card design through the company figures. */
.hanler-product-page .product-action :is(a.product-action-item-btn, a.product-action-i-button, a:has(.product-action-i-button)) { text-decoration:none; }
.hanler-product-page > .about { margin:24px 0 32px; padding:0; background:transparent; color:var(--hd-ink); }
.hanler-product-page .about > .col > .row { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.hanler-product-page .about .about-block { width:auto; min-width:0; padding:24px; border:1px solid var(--hd-line); border-radius:14px; background:#fff; }
.hanler-product-page .about-block-param { display:block; margin:0 0 10px; color:var(--hd-ink); font-size:30px; line-height:1.25; font-weight:600; text-align:left; overflow-wrap:anywhere; }
.hanler-product-page .about-block-text { display:block; margin:0; color:var(--hd-muted); font-size:15px; line-height:1.5; font-weight:400; text-align:left; }
.hanler-product-page > .contacts-map-i { margin:0; padding:0; }
.hanler-product-page:has(> .contacts-map-i), body.mobile .hanler-product-page:has(> .hd-office) { padding-bottom:0; }
body:not(.mobile) .hanler-product-page .hd-tech-section .hd-panel-stack { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
body:not(.mobile) .hanler-product-page .hd-tech-section .hd-panel-stack > .hd-details { min-width:0; margin:0; }
body:not(.mobile) .hanler-product-page .hd-tech-section .hd-panel-stack > .hd-details[open] { grid-column:1/-1; }
@media (max-width:1000px) {
 .hanler-product-page .about > .col > .row { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
body.mobile .hanler-product-page > .about { margin:18px 0; }
body.mobile .hanler-product-page .about .about-block { padding:18px 14px; }
body.mobile .hanler-product-page .about-block-param { font-size:23px; }
body.mobile .hanler-product-page .about-block-text { font-size:14px; }
/* Category cards use the same image-first layout as recommendations. */
.hanler-product-page #products > .col > .gutters:has(.products-a) { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:0 0 32px; width:100%; }
.hanler-product-page #products > .col > .gutters:has(.products-a)::before, .hanler-product-page #products > .col > .gutters:has(.products-a)::after { display:none; }
.hanler-product-page #products > .col > .gutters:has(.products-a) > .col { width:auto; margin:0; min-width:0; }
.hanler-product-page .products-a { display:flex; flex-direction:column; height:100%; border:1px solid var(--hd-line); border-radius:12px; overflow:hidden; background:#fff; text-decoration:none; }
.hanler-product-page .products-a > .row:has(.products-block) { order:-1; }
.hanler-product-page .products-title { padding:14px; font-size:16px; line-height:1.4; color:var(--hd-ink); background:transparent; height:auto; min-height:0; text-align:left; }
.hanler-product-page .products-block { height:auto; width:100%; padding:0; margin:0; background:#fff; }
.hanler-product-page .products-block img { display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:contain; }
body.mobile .hanler-product-page #products > .col > .gutters:has(.products-a) { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.mobile .hanler-product-page .products-title { padding:12px; font-size:14px; }

.hanler-product-page [data-design-placeholder] { display:none!important; }

.hanler-product-page .product-param-menu-active { display:none!important; }
.hanler-product-page .olbreadcrumb { font-size:12px; color:var(--hd-muted); line-height:1.5; margin:10px 0; }
.hanler-product-page .olbreadcrumb a { color:var(--hd-muted); }
.hanler-product-page .product-images, .hanler-product-page .product-images-preview { background:transparent; }

/* Product block corrections: readable price matrix, padded benefits and visible photo previews. */
.hanler-product-page > .row:has(.ptw_img):not(.ptw) { margin-top:0; }
.hanler-product-page .ptw .btn {
    -webkit-appearance:none; appearance:none; border:1px solid var(--hd-blue);
    background:var(--hd-blue); background-image:none; box-shadow:none; text-shadow:none;
    font:600 15px/1.4 'Open Sans',sans-serif;
}
.hanler-product-page .ptw .btn:hover, .hanler-product-page .ptw .btn:active { background:#006ba9; background-image:none; opacity:1; }
.hanler-product-page .ptw .btn::before, .hanler-product-page .ptw .btn::after { display:none; }
.hanler-product-page .hd-price-scroll { display:block; min-width:0; max-width:100%; border:0; border-radius:0; height:auto; background:transparent; scrollbar-color:#91b2c7 #edf3f7; }
.hanler-product-page .hd-prices { width:100%; }
.hanler-product-page .hd-full-price-table { width:max-content; min-width:100%; height:auto; overflow:visible; font-size:13px; line-height:1.45; }
.hanler-product-page table.hd-full-price-table :is(th,td) { min-width:88px; font-size:13px; line-height:1.45; padding:12px 10px; }
.hanler-product-page table.hd-full-price-table :is(th,td):first-child { position:sticky; left:0; z-index:1; background:#eef5f9; box-shadow:1px 0 var(--hd-line); }
.hanler-product-page table.hd-full-price-table thead tr:not(:first-child) th:first-child { position:relative; left:auto; z-index:auto; box-shadow:none; }
.hanler-product-page table.hd-full-price-table td::before, .hanler-product-page table.hd-full-price-table td::after { display:none; }
.hanler-product-page table.hd-full-price-table tbody tr:hover td:not(:first-child) { background:#f0f7fb; }
.hanler-product-page .hd-price-table { table-layout:fixed; }
.hanler-product-page .hanler-advantages { margin:24px 0; padding:0; }
.hanler-product-page .hanler-advantages h2 { margin:0 0 18px; padding:0; }
.hanler-product-page .hanler-advantages .hanler-advantages__grid { gap:16px; }
.hanler-product-page .hanler-advantages .hanler-advantages__card { padding:20px 16px; }
.hanler-product-page .hanler-advantages .hanler-advantages__icon { width:56px; height:56px; margin:0 auto 16px; }
.hanler-product-page .hanler-advantages .hanler-advantages__title { font-size:15px; line-height:1.4; min-height:2.8em; margin:0 0 12px; }
.hanler-product-page .hanler-advantages .hanler-advantages__text { font-size:14px; line-height:1.5; }
.hanler-product-page .hd-gallery { width:100%; min-width:0; background:#fff; border-radius:12px; }
.hanler-product-page .hd-gallery-stage { position:relative; width:100%; aspect-ratio:4/3; overflow:hidden; border-radius:12px 12px 0 0; background:#e6edf2; touch-action:pan-y; }
.hanler-product-page .hd-gallery-photo { display:block; width:100%; height:100%; object-fit:cover; border-radius:12px 12px 0 0; }
.hanler-product-page .hd-gallery-arrow { position:absolute; top:50%; transform:translateY(-50%); display:grid; place-items:center; width:44px; height:44px; min-height:44px; padding:0; border:1px solid var(--hd-line); border-radius:50%; background:#fff; color:var(--hd-ink); font:400 32px/1 Arial,sans-serif; appearance:none; box-shadow:0 2px 8px #142c3b20; }
.hanler-product-page .hd-gallery-arrow[hidden] { display:none; }
.hanler-product-page .hd-gallery-previous { left:12px; }
.hanler-product-page .hd-gallery-next { right:12px; }
.hanler-product-page .hd-gallery-counter { position:absolute; bottom:12px; left:12px; border-radius:6px; padding:4px 9px; font-size:12px; line-height:1.5; color:#fff; background:#142c3bc9; }
.hanler-product-page .hd-gallery-thumbs { position:relative; display:flex; align-items:center; gap:8px; width:100%; height:auto; min-height:88px; padding:12px; overflow-x:auto; overflow-y:hidden; border:1px solid var(--hd-line); border-top:0; border-radius:0 0 12px 12px; scrollbar-color:#91b2c7 #edf3f7; }
.hanler-product-page .hd-gallery-thumb { display:block; flex:0 0 80px; width:80px; height:60px; min-height:60px; margin:0; padding:2px; border:2px solid transparent; border-radius:6px; background:#fff; appearance:none; box-shadow:none; }
.hanler-product-page .hd-gallery-thumb[aria-pressed="true"] { border-color:var(--hd-blue); }
.hanler-product-page .hd-gallery-thumb img { display:block; width:100%; height:100%; border-radius:2px; object-fit:cover; }
.hanler-product-page .hd-mobile-gallery { display:block; overflow:visible; }
.hanler-product-page .hd-mobile-gallery > .hd-gallery, .hanler-product-page .hd-gallery-heading { width:91.6667%; margin:0 auto; }
.hanler-product-page .hd-gallery-heading h2 { padding:0; margin:0 0 18px; }
body.mobile .hanler-product-page .hd-price-scroll { overflow:visible; }
body.mobile .hanler-product-page .hanler-advantages { margin:18px 0; padding:0; }
body.mobile .hanler-product-page .hanler-advantages h2 { margin:0 0 18px; padding:0; }
body.mobile .hanler-product-page .hanler-advantages .hanler-advantages__grid { gap:12px; }
body.mobile .hanler-product-page .hanler-advantages .hanler-advantages__card { padding:18px 12px; }
body.mobile .hanler-product-page .hanler-advantages .hanler-advantages__icon { width:48px; height:48px; margin:0 auto 14px; }
body.mobile .hanler-product-page .hanler-advantages .hanler-advantages__title { min-height:2.8em; margin:0 0 10px; font-size:14px; line-height:1.4; }
body.mobile .hanler-product-page .hanler-advantages .hanler-advantages__text { font-size:13px; line-height:1.5; }
@media (max-width:1200px) {
 body:not(.mobile) .hanler-product-page .hanler-advantages .hanler-advantages__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:350px) {
 body.mobile .hanler-product-page .hd-width-label { display:block; }
 body.mobile .hanler-product-page .hd-width-label select { display:block; width:100%; margin-top:8px; }
}

/* Size limits remain visible independently of the technical disclosures. */
.hanler-product-page .hd-characteristics { background:#fff; border:1px solid var(--hd-line); border-radius:16px; padding:24px; }
.hanler-product-page .hd-characteristics .product-size { display:block; width:100%; margin:0; }
.hanler-product-page .hd-characteristics .product-parametr-table { display:block; float:none; width:100%; margin:0; overflow-x:auto; }
.hanler-product-page .hd-characteristics table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:15px; line-height:1.5; }
.hanler-product-page .hd-characteristics table :is(th,td) { padding:14px 16px; font-size:15px; line-height:1.5; text-align:left; vertical-align:top; border:0; border-bottom:1px solid var(--hd-line); overflow-wrap:anywhere; }
.hanler-product-page .hd-characteristics table th { background:#eef5f9; font-weight:600; width:auto!important; }
.hanler-product-page .hd-characteristics table th:first-child { width:45%!important; }
.hanler-product-page .hd-characteristics table tr:last-child td { border-bottom:0; }
.hanler-product-page .hd-characteristics table td[colspan] { color:var(--hd-muted); font-size:13px; }
.hanler-product-page .hd-description-column { width:100%!important; margin:0!important; }
.hanler-product-page .hanler-advantages :is(.hanler-advantages__title,.hanler-advantages__text) { overflow-wrap:anywhere; }
body.mobile .hanler-product-page .hd-characteristics { padding:20px 12px; }
body.mobile .hanler-product-page .hd-characteristics table :is(th,td) { padding:12px 8px; font-size:14px; }
body.mobile .hanler-product-page .hd-characteristics table td[colspan] { font-size:12px; }
/* Product characteristics share the selected lift-table card presentation. */
body:not(.mobile) .hanler-product-page .hd-characteristics { max-width:none; }
.hanler-product-page .hd-characteristics:has(.hd-spec-cards) > h2 { margin:0 0 20px; padding:0; font-size:24px; line-height:1.3; }
.hanler-product-page .hd-characteristics table.hd-spec-cards { display:block; border:0; }
/* Set readable type before the shared script moves the table into this section. */
.hanler-product-page .product-size table :is(th,td) { font-size:14px; line-height:1.5; }
.hanler-product-page .hd-spec-cards thead { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.hanler-product-page .hd-spec-cards tbody { display:grid; grid-template-columns:1fr 1fr 1.45fr; gap:14px; }
.hanler-product-page .hd-spec-cards tbody tr { display:block; min-width:0; padding:20px; background:#f1f6fa; border-radius:12px; }
.hanler-product-page .hd-characteristics table.hd-spec-cards tbody :is(th,td) { display:block; width:auto!important; margin:0; padding:0; border:0; background:transparent; }
.hanler-product-page .hd-characteristics table.hd-spec-cards tbody th { margin-bottom:14px; color:var(--hd-muted); font-size:14px; line-height:1.5; font-weight:400; }
.hanler-product-page .hd-characteristics table.hd-spec-cards tbody td { color:var(--hd-ink); font-size:28px; line-height:1.3; font-weight:600; font-variant-numeric:tabular-nums; }
.hanler-product-page .hd-spec-unit { color:var(--hd-muted); font-size:15px; font-weight:400; }
.hanler-product-page .hd-spec-state { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:4px 12px; }
.hanler-product-page .hd-spec-state + .hd-spec-state { margin-top:10px; }
.hanler-product-page .hd-spec-state > span { color:var(--hd-muted); font-size:13px; line-height:1.5; font-weight:400; }
.hanler-product-page .hd-spec-state strong { font-size:17px; line-height:1.4; font-weight:600; white-space:nowrap; }
body.mobile .hanler-product-page .hd-spec-cards tbody { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
body.mobile .hanler-product-page .hd-spec-cards tbody tr { padding:16px; }
body.mobile .hanler-product-page .hd-spec-cards tbody tr:last-child { grid-column:1/-1; }
body.mobile .hanler-product-page .hd-characteristics table.hd-spec-cards tbody td { font-size:24px; }
body.mobile .hanler-product-page .hd-characteristics:has(.hd-spec-cards) > h2 { font-size:22px; }
.hanler-product-page .hd-characteristics .product-size + .product-size { margin-top:20px; }
.hanler-product-page .hd-spec-cards-general tbody { grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; }
.hanler-product-page .hd-spec-cards-general.hd-spec-cards-pairs tbody { grid-template-columns:repeat(2,minmax(0,1fr)); }
.hanler-product-page .hd-spec-cards-general tbody .hd-spec-card { display:flex; flex-direction:column; }
.hanler-product-page .hd-characteristics table.hd-spec-cards-general tbody th { flex:1; }
.hanler-product-page .hd-characteristics table.hd-spec-cards-general tbody td { font-size:26px; }
.hanler-product-page .hd-characteristics table.hd-spec-cards-general .hd-spec-card-text td { font-size:18px; line-height:1.5; font-weight:500; }
.hanler-product-page .hd-spec-value-line { font-size:inherit; line-height:inherit; font-weight:inherit; }
.hanler-product-page .hd-spec-value-line + .hd-spec-value-line { margin-top:10px; }
.hanler-product-page .hd-spec-cards-general tbody .hd-spec-card-wide { grid-column:1/-1; }
.hanler-product-page .hd-spec-cards-general tbody .hd-spec-note { grid-column:1/-1; padding:4px 0; border-radius:0; background:transparent; }
.hanler-product-page .hd-characteristics table.hd-spec-cards-general .hd-spec-note td { font-size:14px; line-height:1.5; font-weight:400; color:var(--hd-muted); }
.hanler-product-page .hd-spec-note i { font-style:normal; }
.hanler-product-page .hd-spec-matrix { width:100%; max-width:640px; font-size:15px; line-height:1.5; font-weight:400; }
.hanler-product-page .hd-spec-matrix-row { display:grid; grid-template-columns:1.4fr repeat(3,minmax(0,1fr)); gap:12px; padding:8px 0; border-bottom:1px solid var(--hd-line); }
.hanler-product-page .hd-spec-matrix-row:first-child { color:var(--hd-muted); font-size:13px; }
.hanler-product-page .hd-spec-matrix-row:last-child { border-bottom:0; }
.hanler-product-page .hd-spec-matrix-row > span { min-width:0; }
@media (max-width:1000px) {
 body:not(.mobile) .hanler-product-page .hd-spec-cards-general tbody { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
body.mobile .hanler-product-page .hd-spec-cards-general tbody { grid-template-columns:minmax(0,1fr); }
body.mobile .hanler-product-page .hd-characteristics table.hd-spec-cards-general tbody td { font-size:24px; }
body.mobile .hanler-product-page .hd-characteristics table.hd-spec-cards-general .hd-spec-card-text td { font-size:17px; }
body.mobile .hanler-product-page .hd-characteristics table.hd-spec-cards-general .hd-spec-note td { font-size:13px; }
body.mobile .hanler-product-page .hd-spec-matrix { font-size:14px; }
body.mobile .hanler-product-page .hd-spec-matrix-row { grid-template-columns:1.8fr repeat(3,minmax(0,1fr)); gap:8px; }
/* Regional contacts precede the footer in the mobile product layout. */
body.mobile .hanler-product-page .hd-office { display:block; width:91.6667%; margin:0 auto; padding:0; border:1px solid var(--hd-line); border-radius:16px; overflow:hidden; background:#fff; }
body.mobile .hanler-product-page .hd-office-info { padding:20px; }
body.mobile .hanler-product-page .hd-office-info h2 { margin:0 0 16px; font-size:22px; }
body.mobile .hanler-product-page .hd-office-info p { margin:0 0 12px; font-size:14px; line-height:1.5; }
body.mobile .hanler-product-page .hd-office-info address { font-style:normal; font-size:15px; line-height:1.5; margin-bottom:12px; }
body.mobile .hanler-product-page .hd-office-phone { display:inline-block; color:var(--hd-ink); font-size:20px; font-weight:600; text-decoration:none; }
body.mobile .hanler-product-page .hd-office-hours { color:var(--hd-muted); }
body.mobile .hanler-product-page .hd-office-link { display:block; min-height:44px; padding:10px 12px; border:1px solid var(--hd-line); border-radius:9px; color:var(--hd-blue); text-align:center; text-decoration:none; font-size:14px; }
body.mobile .hanler-product-page .hd-office-map { width:100%; height:280px; background:#edf3f7; color:var(--hd-muted); font-size:14px; }

/* Editorial descriptions use the same card and readable type as product details. */
.hanler-product-page #desc > .col {
 background:#fff; border:1px solid var(--hd-line); border-radius:16px; padding:32px;
 min-width:0;
}
.hanler-product-page #desc > .col > * { margin-left:auto; margin-right:auto; }
.hanler-product-page #desc :is(h2,h3,h4) { padding:0; line-height:1.35; font-weight:600; }
.hanler-product-page #desc h2 { font-size:clamp(22px,1.8vw,28px); margin-top:32px; margin-bottom:14px; }
.hanler-product-page #desc h3 { font-size:21px; margin-top:28px; margin-bottom:12px; }
.hanler-product-page #desc :is(p,li), .hanler-product-page .product-desc :is(p,li) {
 font-size:16px; line-height:1.7; overflow-wrap:anywhere;
}
.hanler-product-page #desc p, .hanler-product-page .product-desc p { margin-top:0; margin-bottom:16px; }
.hanler-product-page #desc :is(ul,ol), .hanler-product-page .product-desc :is(ul,ol) {
 padding-left:24px; margin-top:0; margin-bottom:20px;
}
.hanler-product-page #desc li, .hanler-product-page .product-desc li { margin:0 0 8px; }
.hanler-product-page #desc img { max-width:100%; height:auto; }
.hanler-product-page #desc > .col > :first-child { margin-top:0; }
.hanler-product-page #desc > .col > :last-child { margin-bottom:0; }
.hanler-product-page .product-desc { display:block; width:100%; margin:0; }
body.mobile .hanler-product-page #desc > .col { padding:22px 18px; }
body.mobile .hanler-product-page #desc h2 { font-size:22px; margin-top:26px; }
body.mobile .hanler-product-page #desc h3 { font-size:19px; margin-top:24px; }
body.mobile .hanler-product-page #desc :is(p,li), body.mobile .hanler-product-page .product-desc :is(p,li) { font-size:15px; line-height:1.65; }

/* Long names must wrap inside cards in both server-selected layouts. */
.hanler-product-page :is(.product-item_name,.products-table-t,.products-title,.product-action-item-text,.product-action-i-title) {overflow-wrap:anywhere;}
.hanler-product-page .row.gutters.ui-product-item_blocks {width:100%; margin:0;}
.hanler-product-page .ui-product-item_blocks > .product-item_block-hidden {width:auto; margin:0; min-width:0;}
body:not(.mobile) .hanler-product-page :is(.ui-product-item_blocks,.hd-related-grid,.shelter-grid,.dock-grid),
body:not(.mobile) .hanler-product-page #products > .col > .gutters:has(.products-a) { grid-template-columns:repeat(5,minmax(0,1fr)); }
@media (max-width:1349px) {
 body:not(.mobile) .hanler-product-page :is(.ui-product-item_blocks,.hd-related-grid,.shelter-grid,.dock-grid),
 body:not(.mobile) .hanler-product-page #products > .col > .gutters:has(.products-a) { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:1099px) {
 body:not(.mobile) .hanler-product-page :is(.ui-product-item_blocks,.hd-related-grid,.shelter-grid,.dock-grid),
 body:not(.mobile) .hanler-product-page #products > .col > .gutters:has(.products-a) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1100px) {
 body:not(.mobile) .hanler-product-page .product-action > .col > .gutters {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:900px) {
 body:not(.mobile) .hanler-product-page :is(.ui-product-item_blocks,.hd-related-grid,.shelter-grid,.dock-grid),
 body:not(.mobile) .hanler-product-page #products > .col > .gutters:has(.products-a) {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:600px) {
 body:not(.mobile) .hanler-product-page :is(.ui-product-item_blocks,.hd-related-grid,.shelter-grid,.dock-grid),
 body:not(.mobile) .hanler-product-page #products > .col > .gutters:has(.products-a),
 body:not(.mobile) .hanler-product-page .product-action > .col > .gutters {grid-template-columns:minmax(0,1fr);}
}

/* Loading equipment: synchronized family and configuration selection. */
.hanler-product-page .dock-catalog [hidden] { display:none!important; }
.hanler-product-page .dock-catalog { clear:both; }
.hanler-product-page .dock-catalog > .row { margin:24px 0; }
.hanler-product-page .dock-panel { background:#fff; border:1px solid #dce6ed; border-radius:16px; padding:24px; }
.hanler-product-page .dock-intro { color:#607483; font-size:15px; line-height:1.6; margin:0 0 20px; }
.hanler-product-page .dock-types { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0; }
.hanler-product-page .dock-types button { border:1px solid #dce6ed; background:#f0f7fb; color:#0078be; padding:12px 16px; border-radius:8px; font-size:14px; min-height:44px; }
.hanler-product-page .dock-types button[aria-pressed=true] { background:#0078be; color:#fff; border-color:#0078be; }
.hanler-product-page .dock-configuration { display:flex; flex-direction:column; gap:8px; font-size:14px; margin:14px 0 20px; }
.hanler-product-page .dock-configuration select { max-width:100%; width:100%; min-height:44px; font:inherit; padding:10px; border:1px solid #dce6ed; border-radius:8px; background:#fff; color:#172f40; }
.hanler-product-page .dock-table-scroll { max-width:100%; overflow-x:auto; }
.hanler-product-page .dock-price-table { width:100%; border-collapse:collapse; font-size:14px; }
.hanler-product-page .dock-price-table caption { text-align:left; color:#607483; padding:0 0 12px; line-height:1.5; }
.hanler-product-page .dock-price-table :is(th,td) { border:1px solid #dce6ed; padding:13px 8px; text-align:center; }
.hanler-product-page .dock-price-table th { background:#eef5f9; font-weight:600; }
.hanler-product-page .dock-price-table a { color:#0078be; text-decoration:underline; white-space:nowrap; }
.hanler-product-page .dock-row-table td:first-child { overflow-wrap:anywhere; }
.hanler-product-page .dock-lift-layout { display:grid; grid-template-columns:minmax(0,55fr) minmax(0,45fr); gap:32px; align-items:start; }
.hanler-product-page .dock-lift-price-content { min-width:0; }
.hanler-product-page .dock-lift-extra { margin:24px 0 0; border:1px solid #dce6ed; border-radius:10px; overflow:hidden; background:#fff; }
.hanler-product-page .dock-lift-extra > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px; list-style:none; cursor:pointer; background:#f0f7fb; color:#172f40; }
.hanler-product-page .dock-lift-extra > summary::-webkit-details-marker { display:none; }
.hanler-product-page .dock-lift-extra > summary:focus-visible { outline-offset:-3px; }
.hanler-product-page .dock-lift-extra > summary strong { display:block; font-size:16px; line-height:1.4; font-weight:600; }
.hanler-product-page .dock-lift-extra-subtitle { display:block; margin-top:3px; color:#607483; font-size:13px; line-height:1.5; }
.hanler-product-page .dock-lift-extra-toggle { flex-shrink:0; color:#0078be; font-size:13px; line-height:1.5; white-space:nowrap; }
.hanler-product-page .dock-lift-extra-open, .hanler-product-page .dock-lift-extra[open] .dock-lift-extra-closed { display:none; }
.hanler-product-page .dock-lift-extra[open] .dock-lift-extra-open { display:inline; }
.hanler-product-page .dock-lift-extra-options { padding:4px 16px; }
.hanler-product-page .dock-lift-extra-item { display:grid; grid-template-columns:82px minmax(0,1fr); align-items:center; gap:15px; padding:14px 0; border-bottom:1px solid #dce6ed; }
.hanler-product-page .dock-lift-extra-item:last-child { border-bottom:0; }
.hanler-product-page .dock-lift-extra-item img { display:block; width:82px; height:72px; object-fit:contain; border-radius:6px; background:#fff; }
.hanler-product-page .dock-lift-extra-item h3 { margin:0; color:#172f40; font-size:15px; line-height:1.4; font-weight:600; }
.hanler-product-page .dock-lift-extra-item p { margin:5px 0 0; color:#607483; font-size:13px; line-height:1.5; }
.hanler-product-page .dock-lift-extra-note { margin:0; padding:12px 16px 16px; border-top:1px solid #dce6ed; color:#607483; font-size:13px; line-height:1.5; }
.hanler-product-page .dock-lift-guide { min-width:0; padding:24px; border-radius:12px; background:#f0f7fb; }
.hanler-product-page .dock-lift-guide h3 { margin:0 0 18px; font-size:23px; line-height:1.3; font-weight:600; }
.hanler-product-page .dock-lift-guide-photo { display:block; width:100%; height:185px; object-fit:contain; border-radius:8px; background:#fff; }
.hanler-product-page .dock-lift-guide-list { display:grid; gap:14px; margin:20px 0; padding:0; list-style:none; counter-reset:lift-guide; }
.hanler-product-page .dock-lift-guide-list li { display:flex; align-items:center; gap:12px; counter-increment:lift-guide; }
.hanler-product-page .dock-lift-guide-list li::before { content:counter(lift-guide); display:grid; place-items:center; flex:0 0 28px; height:28px; border-radius:50%; background:#fff; color:#0078be; font-size:14px; }
.hanler-product-page .dock-lift-guide-list strong { display:block; font-size:15px; line-height:1.4; font-weight:600; }
.hanler-product-page .dock-lift-guide-list p { margin:2px 0 0; color:#607483; font-size:13px; line-height:1.5; }
.hanler-product-page .dock-lift-help { display:block; width:100%; min-height:44px; padding:12px 18px; border:1px solid #0078be; border-radius:8px; background:#0078be; color:#fff; font-size:15px; line-height:1.4; }
@media(max-width:900px) { .hanler-product-page .dock-lift-layout { grid-template-columns:minmax(0,1fr); gap:24px; } }
.hanler-product-page .dock-lift-group { border-bottom:1px solid #dce6ed; }
.hanler-product-page .dock-lift-group > summary { display:grid; grid-template-columns:minmax(0,1fr) auto 20px; align-items:center; gap:12px; min-height:64px; padding:18px 0; list-style:none; cursor:pointer; font-size:16px; color:#172f40; }
.hanler-product-page .dock-lift-group > summary::-webkit-details-marker { display:none; }
.hanler-product-page .dock-lift-group > summary::after { content:'+'; color:#0078be; text-align:center; font-size:22px; }
.hanler-product-page .dock-lift-group[open] > summary::after { content:'−'; }
.hanler-product-page .dock-lift-group > summary:focus-visible { outline:2px solid #0078be; outline-offset:3px; }
.hanler-product-page .dock-lift-from { font-variant-numeric:tabular-nums; white-space:nowrap; }
.hanler-product-page .dock-lift-list { list-style:none; margin:0; padding:0 0 10px; }
.hanler-product-page .dock-lift-item { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; padding:14px 0; border-top:1px solid #eef5f9; }
.hanler-product-page .dock-lift-item p { margin:0 0 4px; line-height:1.5; }
.hanler-product-page .dock-lift-name { font-size:15px; color:#172f40; }
.hanler-product-page .dock-lift-specs, .hanler-product-page .dock-lift-article { font-size:13px; color:#607483; overflow-wrap:anywhere; }
.hanler-product-page .dock-lift-price { color:#0078be; text-decoration:underline; font-size:16px; font-variant-numeric:tabular-nums; white-space:nowrap; padding:10px 0; }
.hanler-product-page .dock-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.hanler-product-page .dock-card { display:flex; flex-direction:column; min-width:0; border:1px solid #dce6ed; border-radius:12px; overflow:hidden; scroll-margin-top:140px; }
.hanler-product-page .dock-card:target { outline:3px solid #70c2ee; outline-offset:3px; }
.hanler-product-page .dock-card-image { height:220px; padding:16px; background:#fff; display:flex; justify-content:center; align-items:center; }
.hanler-product-page .dock-card-image img { width:100%; height:100%; object-fit:contain; }
.hanler-product-page .dock-card-body { display:flex; flex-direction:column; flex:1; padding:16px; font-size:14px; }
.hanler-product-page .dock-card h3 { font-size:17px; line-height:1.4; margin:0 0 8px; }
.hanler-product-page .dock-article { color:#607483; font-size:12px; overflow-wrap:anywhere; margin:0 0 14px; }
.hanler-product-page .dock-card dl { margin:0 0 12px; color:#607483; }
.hanler-product-page .dock-card dl div { display:flex; justify-content:space-between; gap:8px; margin:6px 0; line-height:1.4; }
.hanler-product-page .dock-card dd { margin:0; color:#172f40; text-align:right; flex-shrink:0; }
.hanler-product-page .dock-card details { margin:0 0 14px; line-height:1.5; color:#607483; }
.hanler-product-page .dock-card summary { cursor:pointer; color:#0078be; }
.hanler-product-page .dock-card details p { margin:8px 0; }
.hanler-product-page .dock-card-price { margin:auto 0 14px; padding-top:12px; font-size:18px; font-weight:600; color:#172f40; }
.hanler-product-page .dock-card-button { width:100%; min-height:44px; padding:10px 8px; border:1px solid #dce6ed; border-radius:8px; background:#f0f7fb; color:#0078be; font-size:14px; line-height:1.4; }
@media(max-width:1100px) { .hanler-product-page .dock-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
    .hanler-product-page .dock-lift-group > summary { font-size:14px; gap:8px; grid-template-columns:minmax(0,1fr) auto 16px; }
    .hanler-product-page .dock-lift-item { grid-template-columns:minmax(0,1fr); gap:4px; }
    .hanler-product-page .dock-lift-price { justify-self:start; }
    .hanler-product-page .dock-panel { padding:18px 14px; }
    .hanler-product-page .dock-grid { grid-template-columns:minmax(0,1fr); }
    .hanler-product-page .dock-types button { flex:1 1 42%; padding:12px 8px; }
    .hanler-product-page .dock-configuration select { font-size:16px; }
    .hanler-product-page .dock-price-table { font-size:12px; }
    .hanler-product-page .dock-price-table :is(th,td) { padding:12px 6px; }
    .hanler-product-page .dock-row-table thead { display:none; }
    .hanler-product-page .dock-row-table :is(tbody,tr,td) { display:block; width:100%; }
    .hanler-product-page .dock-row-table tr { margin:0 0 16px; border:1px solid #dce6ed; border-radius:8px; overflow:hidden; }
    .hanler-product-page .dock-row-table td { display:flex; justify-content:space-between; align-items:center; gap:12px; text-align:right; border:0; border-bottom:1px solid #eef5f9; padding:10px; font-size:13px; }
    .hanler-product-page .dock-row-table td::before { content:attr(data-label); text-align:left; color:#607483; flex:0 0 44%; }
    .hanler-product-page .dock-row-table td:last-child { border-bottom:0; }
}
