/* Product detail only: preserve the existing brand while making the gallery,
   breadcrumb and quote usable across viewport sizes. */
.hc-product-page { color:#242424; background:#fff; }
.hc-product-page *, .hc-product-page *::before, .hc-product-page *::after { box-sizing:border-box; }
.hc-product-breadcrumb { margin-top:135px; padding:15px clamp(20px,4vw,68px); border-bottom:1px solid #e5e5e5; background:#fff; }
.hc-product-breadcrumb ol { display:flex; flex-wrap:wrap; align-items:center; gap:8px; max-width:1440px; margin:0 auto; padding:0; list-style:none; font:14px/1.5 Geograph-Regular,Arial,sans-serif; }
.hc-product-breadcrumb li { min-width:0; overflow-wrap:anywhere; }
.hc-product-breadcrumb li+li::before { content:'›'; margin-right:8px; color:#8e8e8e; }
.hc-product-breadcrumb a { color:#386787; text-decoration:none; }
.hc-product-breadcrumb [aria-current] { color:#3d3d3d; }
.hc-product-page a:focus-visible,.hc-product-page button:focus-visible,.hc-product-page input:focus-visible,.hc-product-page textarea:focus-visible,.hc-product-page select:focus-visible { outline:3px solid #147ce0; outline-offset:3px; }
.hc-product-page .product-show { display:grid; grid-template-columns:minmax(0,52%) minmax(0,48%); align-items:start; padding:0!important; min-height:0!important; width:100%; margin:0 auto; }
.hc-product-page .product-show .left-hezi,.hc-product-page .product-show .left-hezi.asideFixed,.hc-product-page .product-show .left-hezi.asideBottom { width:100%; float:none; position:sticky!important; left:auto; right:auto; top:135px!important; bottom:auto; padding:0; align-self:start; z-index:1; background:#f5f5f5; }
.hc-product-page .bigimg { width:100%; background:#f5f5f5; }
.hc-product-page .bigimg .hc-product-slide span { display:flex; align-items:center; justify-content:center; width:100%; height:min(calc(100vh - 260px),620px); min-height:350px; position:relative; }
.hc-product-page .bigimg .hc-product-slide span::after { display:none; }
.hc-product-page .bigimg .hc-product-slide img.middleCenter { position:static!important; display:block; width:100%!important; height:100%!important; max-width:100%!important; max-height:100%!important; object-fit:contain!important; object-position:center; margin:0; }
.hc-product-page .bigimg .slick-prev,.hc-product-page .bigimg .slick-next { left:auto!important; right:auto; top:50%!important; width:42px!important; height:48px!important; transform:translateY(-50%); background:#fff!important; color:#191919; border:1px solid #d6d6d6!important; border-radius:4px; opacity:.92; cursor:pointer; }
.hc-product-page .bigimg .slick-prev { left:14px!important; }
.hc-product-page .bigimg .slick-next { right:14px!important; }
.hc-product-page .bigimg .slick-prev:before,.hc-product-page .bigimg .slick-next:before { display:none!important; }
.hc-product-page .bigimg .slick-prev::after { content:'‹'; font:30px/1 Arial,sans-serif; }
.hc-product-page .bigimg .slick-next::after { content:'›'; font:30px/1 Arial,sans-serif; }
.hc-product-page .bigimg .slick-dots { display:none!important; }
.hc-gallery-counter { position:absolute; bottom:14px; left:50%; transform:translateX(-50%); z-index:3; margin:0; padding:5px 12px; border-radius:20px; background:rgba(255,255,255,.9); font:13px/1.3 Geograph-Regular,Arial,sans-serif; color:#333; }
.hc-gallery-counter--with-thumbs { bottom:102px; }
.hc-gallery-thumbs { display:flex; gap:8px; width:100%; padding:9px 14px 12px; overflow-x:auto; scrollbar-width:thin; background:#f5f5f5; }
.hc-gallery-thumb { flex:0 0 82px; width:82px; height:68px; padding:2px; border:2px solid transparent; border-radius:4px; background:#fff; cursor:pointer; }
.hc-gallery-thumb.is-active { border-color:#a8000a; }
.hc-gallery-thumb img { display:block; width:100%; height:100%; object-fit:contain; }
.hc-product-page .product-show .right-hezi { width:100%; float:none; min-width:0; padding:clamp(28px,3.5vw,64px) clamp(24px,5vw,84px) 48px; }
.hc-product-page .product-show .right-hezi .tit { height:auto; margin:0 0 25px; padding:0; font:clamp(28px,2.55vw,41px)/1.2 Geograph-Medium,Arial,sans-serif; letter-spacing:-.025em; overflow-wrap:anywhere; }
.hc-product-page .product-show .right-hezi .nr { padding:0; color:#343434; font:16px/1.68 Geograph-Regular,Arial,sans-serif; text-align:left; }
.hc-product-page .product-show .right-hezi .nr p { margin:0 0 18px; font:inherit; color:inherit; text-align:left; }
.hc-product-page .nr .hc-product-intro { color:#202020!important; font-size:18px!important; line-height:1.6!important; }
.hc-product-page .nr h2 { margin:31px 0 12px; color:#202020; font:22px/1.3 Geograph-Medium,Arial,sans-serif; }
.hc-product-page .nr img { max-width:100%; height:auto; }
.hc-product-quote { margin-top:32px; padding-top:26px; border-top:1px solid #ddd; }
.hc-product-quote h2 { margin:0 0 8px; font:26px/1.25 Geograph-Medium,Arial,sans-serif; color:#141414; }
.hc-product-quote>p { margin:0 0 18px; font:15px/1.55 Geograph-Regular,Arial,sans-serif; color:#555; }
.hc-product-page .message { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; margin:0; padding:0; }
.hc-quote-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.hc-quote-field { min-width:0; }
.hc-quote-field label { display:block; margin:0 0 6px; color:#242424; font:14px/1.35 Geograph-Medium,Arial,sans-serif; }
.hc-optional { font-family:Geograph-Regular,Arial,sans-serif; color:#666; }
.hc-quote-field input,.hc-quote-field select,.hc-quote-field textarea { width:100%; min-width:0; min-height:46px; padding:10px 12px; border:1px solid #979797; border-radius:3px; background:#fff; color:#202020; font:15px/1.4 Geograph-Regular,Arial,sans-serif; text-align:left; }
.hc-quote-field textarea { min-height:110px; resize:vertical; }
.hc-quote-field input::placeholder,.hc-quote-field textarea::placeholder { color:#777; }
.hc-quote-field [aria-invalid="true"] { border-color:#b00020; }
.hc-product-page .message .submit { display:block; width:100%; min-height:50px; padding:12px 20px; border:0; border-radius:3px; background:#a8000a; color:#fff; cursor:pointer; font:16px/1.4 Geograph-Medium,Arial,sans-serif; text-transform:uppercase; }
.hc-product-page .message .submit:hover { background:#8b0009; }
.hc-product-page .hc-form-status { min-height:22px; font:14px/1.4 Geograph-Regular,Arial,sans-serif; }
.hc-product-next { display:flex; align-items:center; gap:15px; max-width:1440px; margin:0 auto 34px; padding:21px clamp(24px,5vw,84px); border-top:1px solid #e6e6e6; background:#f7f8f8; font:15px/1.4 Geograph-Regular,Arial,sans-serif; }
.hc-product-next span:first-child { color:#696969; white-space:nowrap; }
.hc-product-next strong { min-width:0; font-family:Geograph-Medium,Arial,sans-serif; overflow-wrap:anywhere; }
.hc-product-next a { margin-left:auto; color:#a8000a; font-family:Geograph-Medium,Arial,sans-serif; white-space:nowrap; }
.hc-product-next--fallback { background:#fff; }
.hc-product-next--fallback a { margin-left:0; }
@media (max-width:1100px) {
  .hc-product-page .product-show { display:block; }
  .hc-product-page .product-show .left-hezi,.hc-product-page .product-show .left-hezi.asideFixed,.hc-product-page .product-show .left-hezi.asideBottom { position:relative!important; top:auto!important; }
  .hc-product-page .bigimg .hc-product-slide span { height:min(64vw,610px); min-height:0; }
  .hc-product-page .product-show .right-hezi { max-width:820px; margin:auto; padding:30px 30px 50px; }
}
@media (max-width:767px) {
  .hc-product-breadcrumb { margin-top:60px; padding:10px 16px; }
  .hc-product-page .bigimg .hc-product-slide span { height:auto; aspect-ratio:998/780; }
  .hc-product-page .product-show .right-hezi { padding:27px 18px 40px; }
  .hc-product-page .product-show .right-hezi .tit { font-size:clamp(27px,7vw,34px); margin-bottom:20px; }
  .hc-product-page .product-show .right-hezi .nr { font-size:16px; line-height:1.6; text-align:left; }
  .hc-product-page .product-show .right-hezi .nr p { font-size:16px; line-height:1.6; text-align:left; }
  .hc-product-page .nr .hc-product-intro { font-size:17px!important; }
  .hc-product-page .nr h2 { font-size:21px; }
  .hc-quote-row { grid-template-columns:1fr; }
  .hc-product-next { display:block; margin-bottom:0; padding:20px 18px; }
  .hc-product-next span,.hc-product-next strong,.hc-product-next a { display:block; margin:0 0 7px; white-space:normal; }
  .hc-product-next a { margin:12px 0 0; }
}
