/* Compact home cards. Limit title space instead of stretching every card to the longest title. */
body#index .dotare-product-rail{align-items:start!important}
body#index .dotare-home-product{height:auto!important;min-height:0!important;align-self:start!important}
body#index .dotare-home-product>a{display:grid!important;grid-template-rows:auto 51px auto auto!important;gap:8px!important;height:auto!important;min-height:0!important;padding:10px!important;align-content:start!important}
body#index .dotare-home-product-image{display:block!important;position:relative!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:4/3!important;margin:0!important;overflow:hidden!important}
body#index .dotare-home-product-image img{width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important}
body#index .dotare-home-product h3{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden!important;min-height:0!important;height:auto!important;max-height:3.9em!important;line-height:1.3!important;margin:0!important;font-size:13px!important;align-self:start!important;overflow-wrap:anywhere}
body#index .dotare-home-price{margin:0!important;min-height:23px!important;line-height:1.35!important;align-self:start!important}
body#index .dotare-home-product-link{margin:0!important;padding-top:9px!important;line-height:1.4!important}
/* Slick controls slide widths; square image tiles remain independent of source image attributes. */
body#product #main .images-container #thumb-gallery{margin-top:10px!important;margin-bottom:6px!important}
body#product #main .images-container #thumb-gallery .slick-list{height:auto!important;min-height:0!important;max-height:96px!important}
body#product #main .images-container #thumb-gallery .slick-track{display:flex!important;align-items:flex-start!important;height:auto!important;min-height:0!important}
body#product #main .images-container #thumb-gallery .thumb-container{height:auto!important;min-height:0!important;max-height:94px!important;padding:3px!important;box-sizing:border-box!important}
body#product #main .images-container #thumb-gallery .thumb-container>a{display:block!important;width:78px!important;max-width:100%!important;height:78px!important;min-height:0!important;aspect-ratio:1!important;margin:0 auto!important;overflow:hidden!important;border-radius:8px!important;background:#fff!important}
body#product #main .images-container #thumb-gallery .thumb-container img.thumb{display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:78px!important;max-width:100%!important;aspect-ratio:1!important;object-fit:contain!important;object-position:center!important;box-sizing:border-box!important;border:1px solid #dbe6ef!important;border-radius:8px!important;background:#fff!important}
body#product #main .images-container #thumb-gallery .thumb-container img.selected{border:2px solid #1d75b9!important}
body#product #main .images-container #thumb-gallery:not(.slick-initialized){display:flex!important;gap:8px!important;overflow-x:auto!important}
body#product #main .images-container #thumb-gallery:not(.slick-initialized)>.thumb-container{width:84px!important;flex:0 0 84px!important}
@media(max-width:767px){
 body#product #main .images-container .product-cover{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:clamp(250px,78vw,360px)!important;min-height:0!important;max-height:360px!important;aspect-ratio:auto!important;margin:0!important;padding:8px!important;background:#fff!important;box-sizing:border-box!important}
 body#product #main .images-container .product-cover>img#zoom_product{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;min-height:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important}
 body#product #main .images-container{margin-bottom:14px!important;padding:8px!important}
 body#product #main .js-product-prices{padding:10px!important;margin:12px 0!important}
 body#product #main .js-product-prices .current-price{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:8px!important;margin:0!important}
 body#product #main .js-product-prices .price-tax-incl,body#product #main .js-product-prices .price-tax-excl{display:flex!important;flex-direction:column!important;justify-content:center!important;width:auto!important;min-width:0!important;margin:0!important;padding:12px 10px!important}
 body#product #main .js-product-prices .price-label{font-size:11px!important;line-height:1.3!important;margin:0 0 5px!important}
 body#product #main .js-product-prices .price-container{font-size:clamp(20px,5.8vw,27px)!important;line-height:1.2!important;white-space:nowrap!important}
 body#product #main .js-product-prices .price-container-netto{font-size:clamp(18px,5.2vw,24px)!important;line-height:1.2!important;white-space:nowrap!important}
 body#product #main .js-product-prices .price-tax-label{font-size:10px!important;line-height:1.4!important;margin-top:3px!important}
 body#product #main .product-add-to-cart{margin:10px 0 0!important}
 body#product #main .product-add-to-cart>.control-label{margin:0 0 7px!important;line-height:1.3!important;font-size:12px!important}
 body#product #main .product-quantity{margin:0!important;padding:0!important}
 body#product #main .product-quantity .qty{margin:0 0 8px!important;height:44px!important;min-height:0!important}
 body#product #main .product-quantity .qty .bootstrap-touchspin,body#product #main #quantity_wanted{height:44px!important;min-height:0!important}
 body#product #main .product-minimal-quantity{margin:0!important;padding:0!important;line-height:1.3!important}
 body#product #main .product-quantity .add{margin:0!important;gap:8px!important}
 body#product #main .product-quantity .add>button.add-to-cart{min-height:49px!important;padding:11px 12px!important;font-size:15px!important}
 body#index .dotare-rail-heading{gap:12px!important;margin-bottom:10px!important}
 body#index .dotare-rail-heading>span:last-child{max-width:44%;text-align:right}
}
@media(max-width:359px){body#product #main .js-product-prices .current-price{grid-template-columns:minmax(0,1fr)!important}body#product #main .js-product-prices .price-tax-incl,body#product #main .js-product-prices .price-tax-excl{padding:10px 12px!important}}
/* The theme inserts the quantity label inside .qty; reserve its own line above the input. */
@media(max-width:767px){
 body#product #main .product-quantity{display:flex!important;flex-direction:column!important;align-items:stretch!important}
 body#product #main .product-quantity .qty{height:auto!important;min-height:44px!important;max-height:none!important;margin:0 0 10px!important;flex:none!important}
 body#product #main .product-quantity .add{float:none!important;clear:both!important;flex:none!important}
}
@media(max-width:767px){
 body#product #main .product-add-to-cart{display:block!important}
 body#product #main .product-add-to-cart>.control-label{display:block!important;float:none!important;width:auto!important;max-width:100%!important;padding:0!important}
 body#product #main .product-quantity{width:100%!important;max-width:100%!important;float:none!important;clear:both!important}
 body#product #main .product-quantity .qty{width:108px!important;max-width:100%!important;padding:0!important}
 body#product #main .product-quantity .add{width:100%!important;max-width:100%!important}
}
