/* Category, search and product presentation. Catalogue, hooks and pricing stay native. */
body#search .jd-search-heading{margin:12px 0 28px}
body#search .jd-search-heading h1{font-size:30px;font-weight:300;line-height:1.3;text-transform:none;margin:0 0 12px}
body#search .jd-search-heading p{font-size:14px;overflow-wrap:anywhere}
body#search #product-search-no-matches{font-size:22px;line-height:1.4;text-transform:none}
body#search .page-not-found{box-shadow:none;max-width:680px;padding:24px;background:var(--jd-surface);margin:24px auto}
body#search .jd-search-home{display:inline-block;padding:12px 0;text-decoration:underline}
body:is(#category,#search) #wrapper,body#product #wrapper{padding-top:24px}
body:is(#category,#search) .breadcrumb,body#product .breadcrumb{font-size:12px;line-height:1.7;margin-bottom:24px}
body:is(#category,#search) .breadcrumb a,body#product .breadcrumb a{color:#666}
body:is(#category,#search) .jd-category-heading{margin-bottom:30px}
body:is(#category,#search) .jd-category-heading h1{font-size:30px;font-weight:300;text-transform:none;text-align:center;margin:12px 0 28px;line-height:1.3}
body:is(#category,#search) .jd-category-guide{font-size:13px;background:#fff}
body:is(#category,#search) .jd-category-guide summary{text-align:center;padding:10px 0}
body:is(#category,#search) .jd-category-guide #category-description{margin:0 auto;padding:20px 0}
body:is(#category,#search) #left-column{font-size:13px}
.jd-catalog-nav{background:#f7f7f7;padding:20px;margin-bottom:24px}
.jd-catalog-nav h2{font-size:16px;line-height:1.5;font-weight:400;margin:0 0 16px}
.jd-catalog-nav ul{list-style:none;padding:0;margin:0}
.jd-catalog-nav li{margin:0 0 6px}
.jd-catalog-nav a{display:block;padding:6px 0;color:#555;line-height:1.5}
.jd-catalog-nav a[aria-current]{color:var(--jd-pink-text);text-decoration:underline}
body:is(#category,#search) #search_filters,body:is(#category,#search) .block-categories{background:#f7f7f7;border:0;box-shadow:none;padding:20px}
body:is(#category,#search) .block-categories .category-top-menu>li>a{font-size:16px;font-weight:400;text-transform:none}
body:is(#category,#search) #search_filters .facet-title{font-size:14px;text-transform:none}
body:is(#category,#search) #search_filters a,body:is(#category,#search) .block-categories a{color:#555}
body:is(#category,#search) #js-product-list .products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 20px;margin:0}
/* Stretch each card to its grid row; keep complete titles and native variant controls. */
body:is(#category,#search) #js-product-list .products>.product{display:flex;width:auto;max-width:none;min-width:0;padding:0;float:none}
body:is(#category,#search) #products .product-miniature{display:flex;flex-direction:column;margin:0;width:100%;min-width:0}
body:is(#category,#search) #products .thumbnail-container{display:flex;flex-direction:column;flex:1;width:100%;height:auto;border:0;border-radius:0;box-shadow:none;overflow:visible;background:#fff}
/* Neutralize the legacy add-to-cart module's inline card spacing, only here. */
body:is(#category,#search) #products .thumbnail-container{margin-bottom:0!important}
body:is(#category,#search) #products .addToCartFormWrapper{position:static;width:100%;height:auto;min-height:0;margin:14px 0 0;padding:0;box-shadow:none}
body:is(#category,#search) #products .addToCartForm{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}
body:is(#category,#search) #products .variantsProductWrapper{width:100%;margin:0}
body:is(#category,#search) #products .variants-product:empty{display:none}
body:is(#category,#search) #products .addToCartButtonNumber{float:none;width:42px;margin:0;padding:6px;min-height:40px}
body:is(#category,#search) #products .addToCartForm .add-to-cart{width:auto!important;height:auto!important;min-height:40px;padding:8px!important;margin:0!important;flex:1 1 110px}
body:is(#category,#search) #products .thumbnail-top{position:relative}
body:is(#category,#search) #products .product-thumbnail{display:block;margin:0;width:100%;height:auto}
body:is(#category,#search) #products .product-thumbnail img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin:0}
body:is(#category,#search) #products .product-description{position:static;width:100%;height:auto;min-height:0;margin-top:auto;text-align:center;padding:12px 0}
body:is(#category,#search) #products .product-title{font-size:13px;font-weight:400;line-height:1.45;min-height:0;margin:0 0 7px}
body:is(#category,#search) #products .product-price-and-shipping{color:#555;font-size:17px;line-height:1.5;font-weight:600;margin:0}
body:is(#category,#search) #products .regular-price{font-size:13px}
body:is(#category,#search) #products .highlighted-informations{position:static;width:100%;height:auto;min-height:0;padding:6px 0;background:#fff;box-shadow:none;text-align:center}
body:is(#category,#search) #products .quick-view{font-size:12px;color:#666;display:inline-flex;align-items:center;min-height:30px}
body:is(#category,#search) #products .product-flags .product-flag{font-size:12px;min-height:0;padding:6px 8px;min-width:0}
body:is(#category,#search) #products button,body:is(#category,#search) #products .btn{max-width:100%;white-space:normal;font-size:12px;line-height:1.4;min-height:40px}
body:is(#category,#search) #products .add-to-cart{background:var(--jd-pink-text);border-color:var(--jd-pink-text)}
body:is(#category,#search) #products input[type=number]{max-width:54px}
body:is(#category,#search) .products-selection{font-size:13px;border-bottom:1px solid #e4e2e2;padding-bottom:16px;margin-bottom:24px}
body:is(#category,#search) .products-sort-order .select-title{font-size:13px;padding:10px 12px;min-height:40px}
body:is(#category,#search) .pagination{margin-top:28px;font-size:13px}
.jd-subcategories{margin:0 0 32px;border-bottom:1px solid #e4e2e2;padding:0 0 22px}
.jd-subcategory-list{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin:0;padding:0;list-style:none}
.jd-subcategory-list li{flex:0 1 150px;min-width:0;text-align:center}
.jd-subcategory-list a{display:flex;flex-direction:column;align-items:center;gap:12px;color:#555;font-size:13px;line-height:1.4;padding:8px}
.jd-subcategory-list img{width:100%;height:110px;object-fit:contain;background:#fafafa;border-radius:6px}
.jd-subcategory-list a:hover{color:var(--jd-pink-text);text-decoration:underline}
body#product .product-container{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px;margin:0}
body#product .product-container>.col-md-6{width:auto;float:none;padding:0;min-width:0}
body#product #content.page-content{max-width:none;width:100%;margin:0}
body#product #main h1{font-size:26px;font-weight:300;line-height:1.3;text-transform:none;margin:0 0 16px}
body#product .jd-product-brand{font-size:13px;margin-bottom:24px}
body#product .jd-product-brand a{color:#666;text-decoration:underline}
body#product .product-information{font-size:14px;line-height:1.6}
body#product [id^=product-description-short]{font-size:14px;line-height:1.7;margin-bottom:12px;color:#666}
body#product [id^=product-description-short] ul{padding-left:20px}
body#product .jd-product-detail-link{display:inline-block;font-size:12px;text-decoration:underline;padding:6px 0;margin-bottom:18px}
body#product .product-prices{margin:8px 0 22px}
body#product .current-price-value{font-size:30px;font-weight:400;color:var(--jd-pink-text);line-height:1.3}
body#product .product-prices .price-ecotax,body#product .tax-shipping-delivery-label{font-size:12px;line-height:1.6}
body#product .product-prices .discount{font-size:12px;font-weight:400;vertical-align:middle}
body#product .product-variants>.product-variants-item{margin:14px 0}
body#product .product-variants .control-label{font-size:14px}
body#product .product-quantity{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;align-items:start}
body#product .product-quantity .qty,body#product .product-quantity .add{float:none;margin:0}
body#product .product-quantity .qty{flex:0 0 72px;width:72px}
body#product .product-quantity .add{flex:0 1 auto;width:auto}
body#product .product-quantity .add-to-cart{min-height:44px;height:auto;font-size:14px;font-weight:400;padding:12px 22px;white-space:normal}
body#product #product-availability{font-size:13px;line-height:1.6;margin-top:12px}
body#product .images-container{display:grid;grid-template-columns:78px minmax(0,1fr);gap:16px;align-items:start}
body#product .product-cover{grid-column:2;grid-row:1;margin:0;min-width:0}
body#product .product-cover img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;box-shadow:none}
body#product #main .images-container>.js-qv-mask{grid-column:1;grid-row:1;width:100%;max-height:580px;overflow-y:auto;overflow-x:hidden;margin:0;padding:0;box-sizing:border-box}
body#product .images-container .product-images{display:flex;flex-direction:column;width:100%;margin:0}
body#product .images-container .thumb-container{display:block;width:100%;margin:0 0 12px}
body#product .images-container .thumb{width:100%;height:auto;border:1px solid transparent;margin:0;cursor:pointer}
body#product .images-container .thumb.selected,body#product .images-container .thumb:hover{border-color:var(--jd-pink-text)}
body#product .scroll-box-arrows{display:none}
body#product .jd-product-information{clear:both;margin-top:48px;scroll-margin-top:24px}
body#product .jd-product-information .tabs{padding:0;border:0;border-top:1px solid #ddd;margin:0;box-shadow:none}
body#product .tabs .nav-tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid #ddd;margin:0;gap:12px}
body#product .tabs .nav-tabs .nav-item{float:none;margin:0}
body#product .tabs .nav-tabs .nav-link{font-size:18px;font-weight:400;padding:20px 12px;text-transform:none}
body#product .tabs .tab-content{padding:28px 0;font-size:14px;line-height:1.75}
body#product .tab-content .product-description{max-width:85ch}
body#product .tab-content img{max-width:100%;height:auto}
body#product .tab-content table{max-width:100%;font-size:13px}
body#product .tab-content .product-description{overflow-x:auto}
body#product .product-features{max-width:800px}
body#product .jd-product-features{margin-top:28px}
body#product .jd-product-features .h6{font-size:16px;line-height:1.5;text-transform:none;margin:0 0 16px}
body#product .jd-product-features dl.data-sheet{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);margin:0 0 24px}
body#product .jd-product-features dl.data-sheet dt.name,
body#product .jd-product-features dl.data-sheet dd.value{width:auto;min-width:0;min-height:0;margin:0;padding:12px 16px;font-size:14px;line-height:1.6;text-transform:none;overflow-wrap:anywhere;border-bottom:1px solid var(--jd-border);background:#f8f7f8;color:var(--jd-ink)}
body#product .jd-product-features dl.data-sheet dd.value{background:#fff}
body#product .jd-feature-details summary{display:list-item;list-style:disclosure-closed inside;cursor:pointer;padding:12px 0;font-size:14px;color:var(--jd-pink-text)}
body#product .jd-feature-details[open] summary{list-style-type:disclosure-open;margin-bottom:12px}
@media(max-width:575px){
 body#product .jd-product-features dl.data-sheet{grid-template-columns:minmax(0,1fr)}
 body#product .jd-product-features dl.data-sheet dt.name{padding-bottom:4px;border-bottom:0}
 body#product .jd-product-features dl.data-sheet dd.value{padding-top:4px;background:#f8f7f8;margin-bottom:12px}
}
body#product .product-features>dl.data-sheet dt,body#product .product-features>dl.data-sheet dd{font-size:13px;text-transform:none;line-height:1.6}
body#product .product-accessories{margin-top:40px}
.jd-catalog-filters{margin:0 0 28px;padding:16px;background:#f6f6f6;color:#3f3f3f}
.jd-catalog-filters,.jd-catalog-filters *{box-sizing:border-box}
.jd-catalog-filters summary{font-size:15px;font-weight:600;cursor:pointer;line-height:1.6}
.jd-catalog-filters summary{display:list-item;list-style:disclosure-closed inside}
.jd-catalog-filters[open] summary{list-style-type:disclosure-open}
.jd-catalog-filters fieldset{min-width:0;padding:0;margin:20px 0;border:0}
.jd-catalog-filters legend{font-size:14px;font-weight:600;margin-bottom:10px}
.jd-price-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.jd-price-fields label{font-size:12px;min-width:0}
.jd-price-fields input{display:block;width:100%;height:42px;background:#fff;border:1px solid #888;padding:6px;color:#3f3f3f;font:inherit;font-size:14px;caret-color:var(--jd-pink-text)}
.jd-brand-options{max-height:240px;overflow-y:auto;scrollbar-color:#888 #f6f6f6}
.jd-brand-options label{display:flex;align-items:center;gap:9px;min-height:36px;margin:0;font-size:12px;line-height:1.5;text-align:left;cursor:pointer}
.jd-brand-options input{flex:0 0 17px;width:17px;height:17px;margin:0;accent-color:var(--jd-pink-text)}
.jd-brand-options span{overflow-wrap:anywhere}
body:is(#category,#search) .jd-catalog-filters .btn{width:100%;white-space:normal;font-size:12px;min-height:44px;padding:10px 8px}
.jd-filter-reset{display:block;text-align:center;font-size:12px;margin-top:12px;text-decoration:underline;text-underline-offset:3px;padding:6px}
.jd-catalog-filters :focus-visible{outline:2px solid var(--jd-pink-text);outline-offset:3px}
.jd-catalog-filters p[role=alert]{color:#8a174d;font-size:12px;margin-top:10px}
@media(min-width:1200px){
 body:is(#category,#search) #left-column{width:20%}body:is(#category,#search) #content-wrapper.left-column{width:80%}
 body:is(#category,#search) #js-product-list .products{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:991px){
 body:is(#category,#search) #js-product-list .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
 body#product .product-container{gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 body#product .images-container{grid-template-columns:58px minmax(0,1fr);gap:10px}
}
@media(max-width:767px){
 body:is(#category,#search) #wrapper,body#product #wrapper{padding-top:16px}
 body:is(#category,#search) .breadcrumb,body#product .breadcrumb{font-size:11px;margin-bottom:18px}
 body:is(#category,#search) .jd-category-heading h1{font-size:24px;margin:8px 0 18px}
 body:is(#category,#search) #left-column .block-categories{padding:14px;margin-bottom:18px}
 .jd-catalog-nav{padding:12px 14px;margin-bottom:18px}
 .jd-catalog-nav h2{font-size:14px;margin-bottom:8px}
 .jd-catalog-nav ul{display:flex;gap:12px;overflow-x:auto}
 .jd-catalog-nav li{flex:0 0 auto;margin:0}
 .jd-catalog-nav a{font-size:12px}
 body:is(#category,#search) #left-column .category-sub-menu{display:flex;flex-wrap:wrap;gap:4px 12px}
 body:is(#category,#search) #left-column .category-sub-menu li{min-width:0}
 body:is(#category,#search) .products-selection{font-size:12px;margin-bottom:20px}
 body:is(#category,#search) #products .product-title{font-size:12px}
 body:is(#category,#search) #products .product-price-and-shipping{font-size:16px}
 .jd-subcategory-list{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;gap:10px;padding-bottom:12px;scroll-snap-type:x proximity}
 .jd-subcategory-list li{flex:0 0 112px;scroll-snap-align:start}
 .jd-subcategory-list img{height:80px}
 body#product .product-container{display:flex;flex-direction:column;gap:26px}
 body#product #main h1{font-size:23px}
 body#product .images-container{display:flex;flex-direction:column;gap:14px}
 body#product .product-cover{width:100%}
 body#product #main .images-container>.js-qv-mask{max-height:none;width:100%;overflow:auto}
 body#product .images-container .product-images{flex-direction:row;gap:10px;width:max-content;max-width:none}
 body#product .images-container .thumb-container{width:64px;flex:0 0 64px;margin:0}
 body#product .jd-product-brand{margin-bottom:16px}
 body#product .current-price-value{font-size:28px}
 body#product .jd-product-information{margin-top:32px}
 body#product .tabs .nav-tabs .nav-link{font-size:15px;padding:14px 8px}
 body#product .tabs .tab-content{padding:20px 0}
}
