/* Product + category mobile corrections, scoped to Dotare. */
@media(max-width:767px){
 #product .product-quantity .add {
   display:grid!important;
   grid-template-columns:52px minmax(0,1fr)!important;
   grid-template-areas:"cart cart" "wish quote"!important;
   align-items:stretch!important;
   width:100%!important;max-width:100%!important;
   gap:10px!important;margin:8px 0 0!important;
 }
 #product .product-quantity .add > button.add-to-cart {
   grid-area:cart!important;
   width:100%!important;max-width:100%!important;
   min-height:50px!important;margin:0!important;
   border-radius:11px!important;
 }
 #product .product-quantity .add > .wishlist {
   grid-area:wish!important;display:flex!important;
   min-width:0!important;width:52px!important;max-width:52px!important;
   height:50px!important;margin:0!important;padding:0!important;
 }
 #product .product-quantity .add > .wishlist .leo-wishlist-button {
   display:flex!important;align-items:center!important;justify-content:center!important;
   height:50px!important;width:52px!important;min-width:52px!important;
   border:1px solid #cbdce9!important;background:#fff!important;
   border-radius:10px!important;margin:0!important;padding:0!important;
 }
 #product .product-quantity .add > #add-to-quote {
   grid-area:quote!important;
   min-width:0!important;width:100%!important;max-width:100%!important;
   margin:0!important;padding:0!important;
 }
 #product .product-quantity .add > #add-to-quote .cqw-product-quantity,
 #product .product-quantity .add > #add-to-quote .cqw-add {
   display:block!important;min-width:0!important;width:100%!important;
   margin:0!important;padding:0!important;
 }
 #product .product-quantity .add #btn-cqw-add-to-quote {
   display:flex!important;justify-content:center!important;align-items:center!important;
   margin:0!important;width:100%!important;max-width:100%!important;
   min-width:0!important;height:50px!important;min-height:50px!important;
   padding:8px 10px!important;
   text-transform:none!important;letter-spacing:0!important;
   font-size:13px!important;line-height:1.23!important;font-weight:800!important;
   border-radius:11px!important;white-space:normal!important;text-align:center!important;
 }
 #product .product-quantity .add #btn-cqw-add-to-quote span {
   font-size:inherit!important;line-height:inherit!important;
   overflow-wrap:anywhere!important;white-space:normal!important;
 }
 #product .product_availability_and_delivery {
   margin:12px 0 10px!important;padding:10px!important;
   border:1px solid #e1eaf2!important;border-radius:14px!important;
   background:#fbfcfe!important;gap:9px!important;
 }
 #product .product_availability_and_delivery .col-availability {
   display:flex!important;align-items:center!important;flex-wrap:wrap!important;
   min-height:42px!important;width:100%!important;max-width:100%!important;
   padding:8px 12px!important;margin:0!important;
   background:#fff5ca!important;border:1px solid #f0e2a6!important;
   border-left:4px solid #e8c71c!important;border-radius:9px!important;
   color:#304b60!important;font-size:13px!important;
   font-weight:700!important;text-transform:none!important;line-height:1.25!important;
 }
 #product .product_availability_and_delivery #product-availability {
   margin-left:5px!important;font-weight:850!important;
   font-size:14px!important;color:#183b57!important;
   text-transform:none!important;line-height:1.25!important;
 }
 #product .product_availability_and_delivery #idTabProductDelivery {
   margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;
   border-radius:10px!important;overflow-x:auto!important;
 }
 #product #idTabProductDelivery .table {
   border:1px solid #dfebf3!important;border-radius:10px!important;
   border-collapse:separate!important;border-spacing:0!important;
   background:#fff!important;margin:0!important;
 }
 #product #idTabProductDelivery .table th,
 #product #idTabProductDelivery .table td {
   font-size:12px!important;line-height:1.3!important;
   padding:8px 10px!important;white-space:normal!important;
 }
 #product #idTabProductDelivery .table thead th {
   font-size:12px!important;color:#1f506f!important;
   background:#eaf4fb!important;font-weight:800!important;
 }
 #product #idTabProductDelivery .option_name {font-weight:650!important;}
 #product #idTabProductDelivery .option_price {
   text-align:right!important;white-space:nowrap!important;
   font-variant-numeric:tabular-nums!important;color:#2e4a5c!important;
 }
 #product .product-button-action {
   width:100%!important;max-width:100%!important;
   margin:4px 0 0!important;gap:8px!important;
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
 #product .product-button-action .btn:not(.close){
   min-height:43px!important;border-radius:9px!important;
   padding:8px 6px!important;line-height:1.3!important;
 }
 #category #products .product-miniature .product-image {
   height:272px!important;max-height:272px!important;
   background:#f7fafc!important;border-radius:12px!important;
   overflow:hidden!important;
 }
 #category #products .product-miniature .product-thumbnail {
   display:block!important;width:100%!important;
   height:272px!important;max-height:272px!important;
   overflow:hidden!important;border-radius:12px!important;
 }
 #category #products .product-miniature .product-thumbnail > img,
 #category #products .product-miniature .product-thumbnail .product-additional img {
   width:100%!important;max-width:100%!important;
   height:272px!important;max-height:272px!important;
   object-fit:contain!important;object-position:center!important;
   aspect-ratio:auto!important;background:#f7fafc!important;
 }
 #category #products .product-miniature .product-thumbnail > img[src*="/infinitescrolldw/views/img/load"] {
   opacity:0!important;
 }
 #category #products .product-miniature .product-thumbnail > img[data-dotare-image-loaded="1"] {
   opacity:1!important;
 }
 #category #products .product-miniature .thumbnail-container {
   border:1px solid #e1eaf1!important;border-radius:13px!important;
   overflow:hidden!important;
 }
 #category #products .product-miniature .product-description {
   padding:9px 11px 3px!important;
 }
 #category #products .product-miniature .product-title {
   line-height:1.35!important;min-height:0!important;
   margin:5px 0!important;
 }
 #category #products .product-miniature .dotare-mini-actions {
   padding:0 10px 10px!important;margin:4px 0 0!important;
 }
}
@media (max-width:359px){
 #product .product-quantity .add {grid-template-columns:47px minmax(0,1fr)!important;gap:7px!important;}
 #product .product-quantity .add > .wishlist, #product .product-quantity .add > .wishlist .leo-wishlist-button {
    width:47px!important;min-width:47px!important;
 }
 #product .product-quantity .add #btn-cqw-add-to-quote {font-size:12px!important;padding:6px!important;}
}

/* Reserve the main product image and gallery tiles ahead of their download.
   Presta's cover and thumbnails are generated as 1:1 square derivatives.
   Keep this visual-only; no changes to zoom, variants or gallery JS. */
@media(max-width:767px) {
 #product .images-container .product-cover {
   width:100%!important;
   aspect-ratio:1 / 1!important;
   height:auto!important;
   overflow:hidden!important;
 }
 #product .images-container .product-cover > img#zoom_product {
   display:block!important;
   width:100%!important;
   height:auto!important;
   aspect-ratio:1 / 1!important;
   object-fit:contain!important;
 }
 #product .images-container .thumb-container img.thumb {
   aspect-ratio:1 / 1!important;
   object-fit:contain!important;
 }
}
