/* ANB-LAB catalog / product detail design A.
   Scoped to product-category and product-product; no cart, checkout or account overrides.
   Product photos remain original square images (object-fit:contain). */

/* CATEGORY DESCRIPTION: preserve full OpenCart HTML including tables, links and figures. */
body.anblab-theme .anb-category-page { padding-bottom:45px; }
.anb-category-page .anb-category-intro { align-items:flex-start; margin-bottom:35px; padding:34px 38px; background:linear-gradient(112deg,#f0f6ff 0%,#e9f4ff 70%,#e5efff 100%); }
.anb-category-page .anb-category-intro-copy { min-width:0; }
.anb-category-page .anb-category-intro h1 { font-weight:800; letter-spacing:-.045em; color:#12284b; margin:9px 0 16px; }
.anb-category-page .anb-category-description { max-width:900px; font-size:14px; line-height:1.85; color:#47617e; }
.anb-category-page .anb-category-description img { max-width:100%; height:auto; border-radius:13px; }
.anb-category-page .anb-category-description table { width:100%; max-width:100%; border-collapse:collapse; margin:16px 0; }
.anb-category-page .anb-category-description td,.anb-category-page .anb-category-description th { padding:9px 12px; border:1px solid #dbe6f2; }
.anb-category-page .anb-category-intro-art { min-height:155px; padding:13px; border:1px solid #dce8f5; border-radius:20px; background:#fff; }
.anb-category-page .anb-category-intro-art img { mix-blend-mode:normal; object-fit:contain; max-width:100%; max-height:160px; }
.anb-section-line { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:0 0 19px; }
.anb-section-line h2 { margin:7px 0 0; font-size:clamp(22px,2.4vw,30px); font-weight:800; color:#12284b; letter-spacing:-.035em; line-height:1.2; }
.anb-section-line-hint { color:#7086a2; font-size:12px; padding-bottom:4px; text-align:right; }
.anb-catalog-children { margin:15px 0 39px; }
/* Images from real categories always display fully, even JPGs with opaque backgrounds. */
.anb-category-page .anb-subcategory-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin:0; }
.anb-category-page .anb-subcategory-card { display:flex; flex-direction:column; min-width:0; border:1px solid #dae6f5; border-radius:19px; overflow:hidden; background:#fff; text-decoration:none!important; transition:transform .18s,box-shadow .18s,border-color .18s; }
.anb-category-page .anb-subcategory-card:hover,.anb-category-page .anb-subcategory-card:focus-visible { transform:translateY(-3px); box-shadow:0 16px 30px rgba(16,52,103,.11); border-color:#aecbec; }
.anb-category-page .anb-subcategory-media { display:flex; justify-content:center; align-items:center; height:auto; aspect-ratio:5/4; padding:18px; border-radius:0; background:linear-gradient(145deg,#f5f9ff,#eaf3ff); }
.anb-category-page .anb-subcategory-media img { display:block; object-fit:contain; width:100%; height:100%; max-height:150px; max-width:150px; padding:5px; border-radius:12px; mix-blend-mode:normal; }
.anb-category-page .anb-subcategory-info { display:flex; justify-content:space-between; align-items:center; gap:11px; flex:1; padding:15px 16px 17px; min-height:74px; }
.anb-category-page .anb-subcategory-info strong { color:#132a4d; font-weight:800; font-size:14px; line-height:1.4; overflow-wrap:anywhere; }
.anb-category-page .anb-subcategory-arrow { flex:0 0 29px; height:29px; display:grid; place-items:center; border-radius:50%; background:#eef5ff; color:#0d54b7; font-size:12px; }
.anb-category-page .anb-subcategory-card:hover .anb-subcategory-arrow { color:#fff; background:#1255b7; }

/* PRODUCT SORTING / COMPARISON: preserve OpenCart controls and JS ids. */
.anb-category-page .anb-products-heading { display:flex; align-items:end; justify-content:space-between; gap:14px; margin:0 0 15px; }
.anb-category-page .anb-products-heading h2 { color:#132a4d; font-size:27px; letter-spacing:-.035em; margin:6px 0 0; font-weight:800; }
.anb-category-page .anb-products-results { color:#70849d; font-size:12px; }
.anb-category-page .anb-catalog-toolbar { margin:0 -7px 16px!important; display:flex; flex-wrap:wrap; align-items:center; gap:4px 0; padding:13px 9px 1px; background:#fff; border:1px solid #dce7f4; border-radius:15px; }
.anb-category-page .anb-catalog-toolbar>[class*="col-"] { padding:0 7px; }
.anb-category-page .anb-catalog-toolbar .form-group { margin-bottom:11px; }
.anb-category-page .anb-catalog-toolbar .input-group-addon { font-size:12px; color:#647b98; border-radius:9px 0 0 9px; background:#f5f8fd; border-color:#dce6f4; }
.anb-category-page .anb-catalog-toolbar select { height:35px; font-size:12px; border:1px solid #dce6f4; border-radius:0 9px 9px 0; box-shadow:none; }
.anb-category-page .anb-catalog-toolbar #compare-total { color:#21559d; font-size:12px; font-weight:700; text-align:left; }
.anb-category-page .anb-catalog-toolbar .btn-group .btn { color:#617894; background:#f6f9ff; border:1px solid #e0eaf5; border-radius:9px; padding:8px 12px; }
.anb-category-page .anb-catalog-toolbar .btn-group .btn.active { color:#fff; background:#1554b4; border-color:#1554b4; }

/* SQUARE, NO-CROP PRODUCT PHOTO CARDS: retain list/grid switching from common.js. */
.anb-category-page .anb-catalog-products { display:flex; flex-wrap:wrap; margin-left:-9px; margin-right:-9px; }
.anb-category-page .anb-catalog-products>.product-layout { padding:0 9px; margin:0 0 20px; }
.anb-category-page .anb-catalog-products .product-thumb { height:100%; display:flex; flex-direction:column; margin:0; overflow:hidden; border:1px solid #dce7f4; border-radius:18px; background:#fff; box-shadow:0 7px 20px rgba(26,61,103,.045); }
.anb-category-page .anb-catalog-products .product-thumb>.image { float:none; flex:0 0 auto; width:100%; padding:0; background:#f8fafd; }
.anb-category-page .anb-catalog-products .product-thumb .image>a { padding:15px; aspect-ratio:1/1; width:100%; border-bottom:1px solid #eff2f7; background:#fff; }
.anb-category-page .anb-catalog-products .product-thumb .image img { max-width:100%; max-height:100%; height:100%!important; width:100%!important; object-fit:contain; display:block; }
.anb-category-page .anb-catalog-products .product-thumb>div:not(.image) { display:flex; flex-direction:column; flex:1; min-width:0; }
.anb-category-page .anb-catalog-products .product-thumb .caption { margin:0!important; padding:15px 17px 12px; min-height:0!important; display:flex; flex-direction:column; flex:1; }
.anb-category-page .anb-catalog-products .product-thumb h4 { margin:0 0 9px; min-height:0; line-height:1.45; }
.anb-category-page .anb-catalog-products .product-thumb h4 a { color:#172f53; font-weight:800; font-size:14px; line-height:1.45; }
.anb-category-page .anb-catalog-products .product-thumb .caption>p:not(.price) { color:#70829a; font-size:12px; line-height:1.55; margin:0 0 14px; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.anb-category-page .anb-catalog-products .product-thumb .price { margin:auto 0 0; font-size:21px; font-weight:800; line-height:1.4; color:#1154b4; }
.anb-category-page .anb-catalog-products .product-thumb .price-tax { font-size:10px; }
.anb-category-page .anb-catalog-products .product-thumb .price-old { font-size:13px; }
.anb-category-page .anb-catalog-products .product-thumb .rating { width:auto; clear:none; margin:10px 0 0; padding:0; }
.anb-category-page .anb-catalog-products .product-thumb .button-group { display:flex; flex:0 0 auto; width:100%; align-items:stretch; background:#fff; border:0; border-top:1px solid #edf2f9; overflow:hidden; }
.anb-category-page .anb-catalog-products .product-thumb .button-group button { flex:1; float:none; width:auto!important; display:block!important; background:#fff; color:#1554b4; padding:0 6px; line-height:44px; border:0; font-size:12px; font-weight:700; min-width:0; }
.anb-category-page .anb-catalog-products .product-thumb .button-group button:first-child { flex:3; color:#fff; background:#1554b4; border-radius:0 0 0 14px; text-transform:none; }
.anb-category-page .anb-catalog-products .product-thumb .button-group button:hover { background:#e9f2ff; }
.anb-category-page .anb-catalog-products .product-thumb .button-group button:first-child:hover { background:#0e448e; }
.anb-category-page .anb-catalog-products .product-thumb .button-group button+button { border-left:1px solid #edf2f9; }
.anb-category-page .anb-catalog-products .product-thumb .button-group i { margin-right:4px; }
.anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb { flex-direction:row; }
.anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb>.image { flex:0 0 220px; width:220px; }
.anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb .caption { padding:20px 22px; }
.anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb .button-group { width:auto; max-width:380px; border:1px solid #e8edf6; border-radius:11px; margin:0 20px 16px; }
.anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb .button-group button:first-child { border-radius:10px 0 0 10px; }
.anb-category-page .anb-catalog-products>.product-layout.product-grid .product-thumb .caption { min-height:0!important; }

/* PRODUCT PAGE: gallery + buying summary on top, original content/Prom reviews full-width below. */
.anb-product-page { padding-bottom:50px; }
.anb-product-page .anb-product-main { margin-bottom:35px; }
.anb-product-page .anb-product-gallery { min-width:0; }
.anb-product-page .anb-product-gallery .thumbnails { margin:0; overflow:visible; display:flex; flex-wrap:wrap; gap:12px; clear:none; }
.anb-product-page .anb-product-gallery .thumbnails>li { margin:0; padding:0; }
.anb-product-page .anb-product-gallery .thumbnails>li:first-child { width:100%; }
.anb-product-page .anb-product-gallery .thumbnails>li:first-child a { margin:0; width:100%; aspect-ratio:1/1; max-height:650px; display:flex; align-items:center; justify-content:center; border:1px solid #e0e8f4; background:#fff; border-radius:23px; padding:26px; box-shadow:0 10px 28px rgba(24,57,104,.055); }
.anb-product-page .anb-product-gallery .thumbnails>li:first-child img { display:block; height:100%; width:100%; max-height:100%; max-width:100%; object-fit:contain; }
.anb-product-page .anb-product-gallery .thumbnails>li.image-additional { width:calc(20% - 10px); max-width:none; }
.anb-product-page .anb-product-gallery .image-additional a { display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; margin:0; padding:7px; border:1px solid #dbe6f5; border-radius:13px; background:#fff; }
.anb-product-page .anb-product-gallery .image-additional a:hover { border-color:#79a6e2; }
.anb-product-page .anb-product-gallery .image-additional img { width:100%; height:100%; max-height:100%; object-fit:contain; }
.anb-product-page .anb-product-buy-col { min-width:0; }
.anb-product-page .anb-buy-panel { position:relative; background:#fff; border:1px solid #dfe8f4; border-radius:23px; padding:29px 29px 25px; box-shadow:0 11px 31px rgba(24,57,104,.065); }
.anb-product-page .anb-product-eyebrow { font-size:10px; color:#1758b2; font-weight:800; letter-spacing:.11em; margin:0 0 13px; padding-right:74px; }
.anb-product-page .anb-product-eyebrow i { color:#16a87b; margin-right:6px; }
.anb-product-page .anb-product-quick-actions { position:absolute; right:24px; top:22px; }
.anb-product-page .anb-product-quick-actions button { background:#f3f7fe; border:1px solid #e1eafb; color:#1b58aa; border-radius:10px!important; margin-left:4px; }
.anb-product-page .anb-buy-panel h1 { font-size:clamp(23px,2.5vw,33px); font-weight:800; line-height:1.3; letter-spacing:-.035em; margin:0 0 20px; color:#162d52; }
.anb-product-page .anb-buy-panel>ul.list-unstyled { display:flex; flex-wrap:wrap; gap:8px 15px; padding:0; margin:0 0 17px; color:#67809b; font-size:12px; }
.anb-product-page .anb-buy-panel>ul.list-unstyled>li { float:none!important; clear:none!important; margin:0!important; padding:0; }
.anb-product-page .anb-buy-panel>ul.list-unstyled>li h2 { font-size:31px; color:#1155b7; letter-spacing:-.025em; font-weight:800; line-height:1.2; margin:0; padding:0; }
.anb-product-page .anb-buy-panel>ul.list-unstyled:nth-of-type(1) { border-bottom:1px solid #eef2f8; padding-bottom:17px; }
.anb-product-page .anb-buy-panel>ul.list-unstyled:nth-of-type(2) { display:block; margin:0 0 22px; }
.anb-product-page .anb-buy-panel>ul.list-unstyled:nth-of-type(2)>li { display:block; padding:3px 0; }
.anb-product-page #product { padding:21px 0 0; border-top:1px solid #edf2f8; }
.anb-product-page #product h3 { font-size:17px; font-weight:800; margin:5px 0 17px; }
.anb-product-page #product label.control-label { display:block; font-weight:750; color:#294160; font-size:12px; padding:0 0 8px; }
.anb-product-page #product .form-control { width:100%; border:1px solid #d9e4f1; border-radius:11px; box-shadow:none; background:#fff; min-height:43px; font-size:13px; }
.anb-product-page #product textarea.form-control { min-height:95px; }
.anb-product-page #product .form-group { margin-bottom:15px; }
.anb-product-page #product .radio,.anb-product-page #product .checkbox { margin-top:8px; border:1px solid #dfe9f5; border-radius:10px; padding:8px 11px; }
.anb-product-page #product .radio label,.anb-product-page #product .checkbox label { padding:0; display:flex; flex-wrap:wrap; gap:9px; align-items:center; }
.anb-product-page #input-quantity { display:inline-block; width:80px; max-width:100%; text-align:center; margin:0 0 14px; border-radius:11px; }
.anb-product-page #button-cart { display:block; width:100%; margin:0; min-height:49px; border:0; border-radius:12px; background:#1455b6; color:#fff; font-size:14px; font-weight:800; box-shadow:0 9px 22px rgba(20,85,182,.18); }
.anb-product-page #button-cart:hover { background:#0b438f; }
.anb-product-page .anb-product-aside { display:grid; grid-template-columns:1fr; gap:12px; margin:14px 0 0; }
.anb-product-page .anb-aside-card { border-radius:17px; box-shadow:none; padding:17px 19px; }
.anb-product-page .anb-aside-card h3 { font-size:14px; font-weight:800; margin:0 0 11px; }
.anb-product-page .anb-aside-card p { font-size:12px; line-height:1.7; }
.anb-product-page .anb-product-full-details { margin:28px 0 37px; border:1px solid #dfe8f4; background:#fff; border-radius:23px; padding:30px 36px 34px; box-shadow:0 9px 24px rgba(24,57,104,.045); }
.anb-product-page .anb-details-heading { margin:0 0 20px; }
.anb-product-page .nav-tabs { display:flex; flex-wrap:wrap; gap:6px; border-bottom:1px solid #e5edf7; margin-bottom:22px; }
.anb-product-page .nav-tabs>li { margin:0; }
.anb-product-page .nav-tabs>li>a { border:0!important; padding:12px 17px; margin:0; color:#647b99; font-size:13px; border-radius:11px 11px 0 0; }
.anb-product-page .nav-tabs>li.active>a,.anb-product-page .nav-tabs>li.active>a:hover { background:#edf5ff; color:#1154b4; font-weight:800; }
.anb-product-page .tab-content { color:#445a74; line-height:1.85; font-size:14px; overflow-wrap:anywhere; padding:0; }
.anb-product-page .tab-content img { max-width:100%; height:auto; }
.anb-product-page .tab-content table { max-width:100%; }
.anb-product-page .tab-content h2,.anb-product-page .tab-content h3 { color:#173457; font-weight:800; margin:24px 0 12px; }
.anb-product-page .tab-content .table-bordered td { padding:11px 13px; border-color:#e0e8f3; }
.anb-product-page .tab-content .table-bordered thead { background:#f1f7ff; }
.anb-product-page #tab-review .rating { width:auto; clear:none; }
.anb-product-page #tab-review .rating p { margin-top:0; }
.anb-product-page .prom-reviews-box { max-width:none; }
.anb-product-page .prom-review-card { border-radius:16px; border-color:#e2eaf5; padding:20px; }
/* Related product photos likewise remain square and uncropped. */
.anb-product-page>.row #content>.row:not(.anb-product-main) { display:flex; flex-wrap:wrap; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb { height:100%; border:1px solid #e0e8f3; border-radius:17px; background:#fff; overflow:hidden; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .image>a { display:flex; justify-content:center; align-items:center; aspect-ratio:1/1; padding:10px; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .image img { object-fit:contain; max-height:100%; width:100%; height:100%; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .caption { padding:12px 14px; min-height:0; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .button-group { display:flex; flex-direction:row; overflow:hidden; border-top:1px solid #e3ebf6; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .button-group button { float:none; display:block!important; flex:0 0 17%; width:17%!important; background:#fff; color:#1253b2; padding:0 6px; line-height:42px; font-size:12px; border:0; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .button-group button:first-child { flex:1 1 auto; width:auto!important; color:#fff; background:#1253b2; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .button-group button:hover { background:#eaf3ff; }
.anb-product-page>.row #content>.row:not(.anb-product-main) .product-thumb .button-group button:first-child:hover { background:#0e448e; }

@media(max-width:1199px) {
  .anb-category-page .anb-subcategory-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .anb-product-page .anb-buy-panel { padding:22px; }
  .anb-product-page .anb-product-gallery .thumbnails>li:first-child a { padding:15px; }
}
@media(max-width:767px) {
  .anb-category-page .anb-category-intro { padding:23px 20px; border-radius:19px; }
  .anb-category-page .anb-category-intro-art { padding:8px; }
  .anb-category-page .anb-section-line { align-items:start; flex-direction:column; gap:7px; }
  .anb-category-page .anb-section-line-hint { text-align:left; }
  .anb-category-page .anb-subcategory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .anb-category-page .anb-subcategory-media { padding:9px; }
  .anb-category-page .anb-subcategory-info { padding:12px; min-height:69px; gap:5px; }
  .anb-category-page .anb-subcategory-info strong { font-size:12px; }
  .anb-category-page .anb-subcategory-arrow { width:25px; height:25px; flex-basis:25px; }
  .anb-category-page .anb-products-heading { align-items:start; flex-direction:column; }
  .anb-category-page .anb-catalog-toolbar { padding:10px 9px 0; margin-bottom:15px!important; }
  .anb-category-page .anb-catalog-products>.product-layout.product-grid { width:50%; float:left; padding-left:6px; padding-right:6px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-grid .product-thumb .image>a { padding:8px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-grid .product-thumb .caption { padding:12px 10px 10px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-grid .product-thumb .price { font-size:17px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-grid .product-thumb .button-group button { font-size:10px; padding:0 2px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb>.image { width:145px; flex-basis:145px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb .caption { padding:12px; }
  .anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb .button-group { margin:0 10px 10px; }
  .anb-category-page .anb-catalog-products .product-thumb h4 a { font-size:12px; }
  .anb-category-page .anb-catalog-products .product-thumb .caption>p:not(.price) { display:none; }
  .anb-product-page .anb-product-main { margin-bottom:17px; }
  .anb-product-page .anb-product-gallery { margin-bottom:17px; }
  .anb-product-page .anb-product-gallery .thumbnails>li:first-child a { padding:14px; border-radius:18px; }
  .anb-product-page .anb-buy-panel { border-radius:18px; padding:21px 18px; }
  .anb-product-page .anb-buy-panel h1 { font-size:23px; }
  .anb-product-page .anb-product-full-details { margin:24px 0 30px; border-radius:18px; padding:21px 17px; }
  .anb-product-page .nav-tabs>li>a { padding:9px 11px; font-size:12px; }
}
@media(max-width:767px) {
  /* Base theme removes Bootstrap container padding on phones; cancel the resulting 1px horizontal overflow. */
  .anb-category-page>.row,.anb-product-page>.row { margin-left:0; margin-right:0; }
  .anb-category-page>.row>#content,.anb-product-page>.row>#content { padding-left:0; padding-right:0; }
  .anb-category-page #content>.row:not(.anb-catalog-products):not(.anb-catalog-toolbar) { margin-left:0; margin-right:0; }
  .anb-product-page #content>.row:not(.anb-product-main) { margin-left:0; margin-right:0; }
  .anb-product-page #content>.row:not(.anb-product-main)>[class*="col-"] { padding-left:6px; padding-right:6px; }
  .anb-product-page .anb-product-main { margin-left:-7px; margin-right:-7px; }
  .anb-product-page .anb-product-main>.anb-product-gallery,.anb-product-page .anb-product-main>.anb-product-buy-col { padding-left:7px; padding-right:7px; }
}
@media(max-width:400px) {
  .anb-category-page .anb-subcategory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .anb-category-page .anb-catalog-products>.product-layout.product-list .product-thumb>.image { flex-basis:125px; width:125px; }
  .anb-product-page .anb-product-quick-actions { right:12px; top:12px; }
  .anb-product-page .anb-product-gallery .thumbnails>li.image-additional { width:calc(25% - 9px); }
}

/* Consistent neutral image mount for original category JPG/PNG with any backdrop. */
.anb-category-page .anb-subcategory-media { background:linear-gradient(145deg,#f1f7ff,#eaf3ff); }
.anb-category-page .anb-subcategory-media img { padding:8px; background:#fff; border:1px solid #e7edf6; border-radius:14px; box-shadow:0 7px 16px rgba(24,55,95,.035); }
/* Older store descriptions may contain wide HTML tables: scroll within content, never the viewport. */
.anb-category-page .anb-category-description,
.anb-product-page #tab-description,.anb-information-page .anb-article-body { overflow-wrap:anywhere; min-width:0; }
.anb-category-page .anb-category-description table,
.anb-product-page #tab-description table,.anb-information-page .anb-article-body table { display:block; max-width:100%; overflow-x:auto; }
/* Responsive safeguard for legacy fixed-width rating widget beside product gallery. */
.anb-product-page .anb-buy-panel .rating { width:100%; max-width:100%; min-width:0; }


/* ANB Lab — category content polish, 26 Oct 2026.
   Category-only layout; does not change shared headers, home, search, cart or checkout. */
body.anblab-theme .anb-category-page .anb-category-intro {
  display:block; margin:3px 0 38px; padding:28px 33px 31px;
  border:1px solid #d9e5f5; border-radius:23px;
  background:linear-gradient(113deg,#f0f7ff 0%,#e9f3ff 64%,#deecff 100%);
  box-shadow:0 10px 28px rgba(29,67,115,.035);
}
body.anblab-theme .anb-category-page .anb-category-intro-head {
  display:flex; align-items:center; justify-content:space-between;
  gap:22px; min-width:0;
}
body.anblab-theme .anb-category-page .anb-category-intro-copy {flex:1 1 auto;min-width:0;}
body.anblab-theme .anb-category-page .anb-category-intro h1 {
  margin:12px 0 5px; font-size:clamp(30px,3.15vw,43px);
  font-weight:850;letter-spacing:-.035em;line-height:1.15;
  color:#142e56; overflow-wrap:anywhere;
}
body.anblab-theme .anb-category-page .anb-category-intro-art {
  display:flex; flex:0 0 285px; width:285px; height:175px; min-height:0;
  padding:0; overflow:hidden; border:1px solid #d6e5f6;
  border-radius:19px; background:#f4f8ff; box-shadow:0 4px 20px #1b49750b;
}
body.anblab-theme .anb-category-page .anb-category-intro-art--main img {
  display:block; width:100%;height:100%;max-width:none;max-height:none;
  border:0;border-radius:0;object-fit:cover;object-position:center;
  mix-blend-mode:normal;
}
body.anblab-theme .anb-category-page .anb-category-intro-art--default {
  width:155px;height:150px;flex-basis:155px;
  padding:15px;align-items:center;justify-content:center;background:#fff;
}
body.anblab-theme .anb-category-page .anb-category-intro-art--default img {
  display:block;width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;
}
/* The category description comes from the shop's HTML editor. Override old
   pasted inline typography only within this region, while keeping paragraphs,
   lists, emphasis, links, tables and images functional. */
body.anblab-theme .anb-category-page .anb-category-description {
  display:flow-root; margin-top:22px;padding:23px 26px 25px;
  max-width:100%; min-width:0; overflow-wrap:anywhere;
  border:1px solid #e0eaf6;border-radius:17px;
  background:rgba(255,255,255,.75);
  color:#344e6c;font-size:14px;line-height:1.85;
  text-align:left!important;letter-spacing:normal!important;word-spacing:normal!important;
  text-shadow:none!important;
}
body.anblab-theme .anb-category-page .anb-category-description :is(p,div,span,font,li,ul,ol,blockquote,section,article,td,th) {
  font-family:inherit!important; font-size:inherit!important;
  line-height:inherit!important; letter-spacing:normal!important;
  word-spacing:normal!important; text-align:left!important;
  white-space:normal!important; text-shadow:none!important;
  text-indent:0!important; overflow-wrap:anywhere;
}
body.anblab-theme .anb-category-page .anb-category-description :is(span,font){
  display:inline!important;float:none!important;position:static!important;
}
body.anblab-theme .anb-category-page .anb-category-description p {margin:0 0 12px;}
body.anblab-theme .anb-category-page .anb-category-description :is(ul,ol) {
  margin:10px 0 17px;padding-left:24px;
}
body.anblab-theme .anb-category-page .anb-category-description li {margin:4px 0;}
body.anblab-theme .anb-category-page .anb-category-description ul>li {list-style:disc outside;}
body.anblab-theme .anb-category-page .anb-category-description ol>li {list-style:decimal outside;}
body.anblab-theme .anb-category-page .anb-category-description :is(h2,h3,h4,h5,h6){
  color:#193b68;font-family:inherit!important;font-weight:800;
  line-height:1.4!important;letter-spacing:normal!important;
  margin:17px 0 9px; text-shadow:none!important;
}
body.anblab-theme .anb-category-page .anb-category-description h2 {font-size:19px!important;}
body.anblab-theme .anb-category-page .anb-category-description h3 {font-size:16px!important;}
body.anblab-theme .anb-category-page .anb-category-description :is(h4,h5,h6){font-size:14px!important;}
body.anblab-theme .anb-category-page .anb-category-description :is(strong,b) {font-weight:750!important;}
body.anblab-theme .anb-category-page .anb-category-description a {color:#1457b0;overflow-wrap:anywhere;}
body.anblab-theme .anb-category-page .anb-category-description img {max-width:100%!important;height:auto!important;}
body.anblab-theme .anb-category-page .anb-category-description table {
  max-width:100%!important;width:auto!important;display:block;overflow-x:auto;
  border-collapse:collapse; margin:14px 0;
}
body.anblab-theme .anb-category-page .anb-category-description p:last-child {margin-bottom:0;}
/* Enlarged subcategory pictures, using the existing OpenCart category thumbnails. */
body.anblab-theme .anb-category-page .anb-subcategory-media {
  padding:11px;overflow:hidden;
}
body.anblab-theme .anb-category-page .anb-subcategory-media img {
  display:block;width:100%;height:100%;max-width:210px;max-height:210px;
  padding:0;border-radius:13px;object-fit:contain;
}
/* Product photos retain their size and uncropped contain scaling; only corners change. */
body.anblab-theme .anb-category-page .anb-catalog-products .product-thumb .image img {
  border-radius:12px!important;
}
@media(max-width:991px){
  body.anblab-theme .anb-category-page .anb-category-intro-art--main {
    flex-basis:245px;width:245px;height:155px;
  }
  body.anblab-theme .anb-category-page .anb-subcategory-media img {max-width:190px;max-height:190px;}
}
@media(max-width:767px){
  body.anblab-theme .anb-category-page .anb-category-intro {padding:21px 19px 23px;border-radius:20px;}
  body.anblab-theme .anb-category-page .anb-category-intro-head {
    flex-direction:column;align-items:stretch;gap:17px;
  }
  body.anblab-theme .anb-category-page .anb-category-intro h1 {
    font-size:clamp(27px,6.5vw,35px);margin:9px 0 0;
  }
  body.anblab-theme .anb-category-page .anb-category-intro-art--main {
    flex:none;width:100%;height:auto;aspect-ratio:1.68/1;max-height:240px;
  }
  body.anblab-theme .anb-category-page .anb-category-intro-art--default {
    flex:none;width:100%;height:130px;
  }
  body.anblab-theme .anb-category-page .anb-category-description {
    margin-top:17px;padding:18px 17px;font-size:13px;line-height:1.8;
  }
  body.anblab-theme .anb-category-page .anb-subcategory-media {padding:8px;}
  body.anblab-theme .anb-category-page .anb-subcategory-media img {
    max-width:100%;max-height:100%;
  }
}

/* ANB Lab | Product detail refinement 26 Oct 2026.
   Scoped strictly to product detail. Preserve OpenCart image lightbox, cart,
   quantity/options, wishlist/compare, schema and product description. */
body.anblab-theme #product-product.anb-product-page .anb-product-main {
  margin-bottom:18px;
}
/* Main gallery: larger actual image, not a tiny preview in a huge square. */
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails {
  display:grid;grid-template-columns:repeat(8,minmax(0,1fr));
  align-items:start;gap:9px;margin:0;overflow:visible;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li {
  float:none!important;clear:none!important;width:auto!important;
  max-width:none!important;min-width:0;margin:0;padding:0;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child {
  grid-column:1/-1;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child>a {
  display:flex;align-items:center;justify-content:center;
  width:100%;height:auto;aspect-ratio:6/5;max-height:480px;
  margin:0;padding:20px;border:1px solid #dde9f6;
  border-radius:21px;background:#fff;
  box-shadow:0 9px 25px rgba(21,55,100,.045);overflow:hidden;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child>a>img {
  display:block;flex:none;width:100%!important;height:100%!important;
  max-width:100%!important;max-height:100%!important;
  object-fit:contain;object-position:center;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li.image-additional>a {
  display:flex;align-items:center;justify-content:center;
  width:100%;height:auto;aspect-ratio:1/1;margin:0;padding:5px;
  border:1px solid #dce7f4;border-radius:12px;
  background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s;
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li.image-additional>a:hover,
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li.image-additional>a:focus-visible {
  border-color:#75a5e6;box-shadow:0 0 0 3px rgba(22,95,188,.10);
}
body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li.image-additional img {
  display:block;width:100%;height:100%;object-fit:contain;border-radius:7px;
}
/* Buying panel: reduce whitespace without reducing useful controls. */
body.anblab-theme #product-product.anb-product-page .anb-buy-panel {
  padding:23px 24px 22px;border-radius:20px;
  box-shadow:0 10px 26px rgba(24,57,104,.045);
}
body.anblab-theme #product-product.anb-product-page .anb-product-eyebrow {
  font-size:10px;padding-right:96px;margin-bottom:12px;min-height:23px;
}
body.anblab-theme #product-product.anb-product-page .anb-buy-panel h1 {
  font-size:clamp(23px,2.15vw,29px);line-height:1.24;
  letter-spacing:-.035em;margin:0 0 15px;
}
body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions {
  position:absolute;top:17px;right:19px;display:flex;gap:8px;
  width:auto;float:none;align-items:center;
}
body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions>.btn {
  float:none!important;display:flex;align-items:center;justify-content:center;
  margin:0!important;padding:0!important;flex:0 0 38px;
  width:38px;height:38px;min-width:38px;border-radius:11px!important;
  border:1px solid #dae7f7;color:#1b58aa;background:#f5f9ff;box-shadow:none;
}
body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions>.btn:hover {
  color:#fff;background:#1559b5;border-color:#1559b5;
}
body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions>.btn:focus-visible {
  outline:2px solid #2d78d2;outline-offset:2px;
}
body.anblab-theme #product-product.anb-product-page .anb-buy-panel>ul.list-unstyled {
  margin-bottom:13px;line-height:1.5;
}
body.anblab-theme #product-product.anb-product-page .anb-buy-panel>ul.list-unstyled:nth-of-type(1) {
  padding-bottom:13px;
}
body.anblab-theme #product-product.anb-product-page .anb-buy-panel>ul.list-unstyled:nth-of-type(2) {
  margin-bottom:13px;
}
body.anblab-theme #product-product.anb-product-page .anb-buy-panel>ul.list-unstyled>li h2 {
  font-size:29px;line-height:1.15;
}
body.anblab-theme #product-product.anb-product-page #product {
  padding-top:16px;
}
body.anblab-theme #product-product.anb-product-page #product .form-group {margin-bottom:12px;}
body.anblab-theme #product-product.anb-product-page #input-quantity {
  display:block;width:100px!important;max-width:100%;height:42px;
  margin-bottom:12px;text-align:center;
}
body.anblab-theme #product-product.anb-product-page .anb-purchase-controls {
  display:grid;grid-template-columns:100px minmax(0,1fr);
  column-gap:11px;row-gap:7px;align-items:end;
}
body.anblab-theme #product-product.anb-product-page .anb-purchase-controls>label {
  grid-column:1/-1;margin:0;
}
body.anblab-theme #product-product.anb-product-page .anb-purchase-controls>#input-quantity {
  grid-column:1;margin:0;height:47px;
}
body.anblab-theme #product-product.anb-product-page .anb-purchase-controls>#button-cart {
  grid-column:2;min-width:0;
}
body.anblab-theme #product-product.anb-product-page .anb-purchase-controls>br {display:none;}
body.anblab-theme #product-product.anb-product-page #button-cart {min-height:47px;}
/* Full-width information cards: no empty column below product photos. */
body.anblab-theme #product-product.anb-product-page .anb-product-aside {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;gap:15px;margin:19px 0 25px;
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card {
  display:flex;flex-direction:column;min-width:0;margin:0;
  padding:20px 20px 18px;
  border:1px solid #dbe7f5;border-radius:19px;
  background:linear-gradient(160deg,#fff,#f7faff);
  box-shadow:0 8px 23px rgba(25,61,105,.038);
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card h3 {
  display:flex;align-items:center;gap:9px;font-size:15px;line-height:1.4;
  font-weight:800;color:#17355d;margin:0 0 13px;
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card h3 i {
  display:grid;place-items:center;flex:0 0 33px;
  width:33px;height:33px;margin:0;
  border-radius:10px;background:#e9f3ff;color:#1258b3;font-size:15px;
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card p {
  font-size:13px;line-height:1.62;color:#526c87;margin:0 0 10px;
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card p strong {color:#263f5e;}
body.anblab-theme #product-product.anb-product-page .anb-aside-card a {
  text-decoration:none;color:#1458b3;
}
body.anblab-theme #product-product.anb-product-page .anb-aside-card a:hover {color:#0b4085;text-decoration:underline;}
body.anblab-theme #product-product.anb-product-page .anb-knowledge-list {padding:0;margin:0 0 11px;}
body.anblab-theme #product-product.anb-product-page .anb-knowledge-list li {
  padding:8px 0;border-bottom:1px solid #e5ecf6;
}
body.anblab-theme #product-product.anb-product-page .anb-knowledge-list li:first-child {padding-top:0;}
body.anblab-theme #product-product.anb-product-page .anb-knowledge-list a {font-size:12.5px;line-height:1.5;}
body.anblab-theme #product-product.anb-product-page .anb-knowledge-all {
  display:inline-block;margin-top:auto;font-size:12.5px;font-weight:800;
}
body.anblab-theme #product-product.anb-product-page .anb-contact-buttons {
  display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:auto;
}
body.anblab-theme #product-product.anb-product-page .anb-contact-buttons a {
  display:inline-flex;align-items:center;justify-content:center;
  min-height:37px;padding:8px 12px;border-radius:10px;
  border:1px solid #cbddf5;background:#fff;color:#1754a7;
  font-size:12px;font-weight:700;transition:background .16s,border-color .16s;
}
body.anblab-theme #product-product.anb-product-page .anb-contact-buttons a:hover {
  background:#e9f3ff;border-color:#a9c9ef;text-decoration:none;
}
/* Existing description/reviews layout remains intact. */
body.anblab-theme #product-product.anb-product-page .anb-product-full-details {margin-top:4px;}
@media (max-width:1199px) {
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails {grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child>a {max-height:440px;padding:14px;}
  body.anblab-theme #product-product.anb-product-page .anb-buy-panel {padding:20px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-aside {gap:11px;}
  body.anblab-theme #product-product.anb-product-page .anb-aside-card {padding:17px;}
}
@media (max-width:991px) {
  body.anblab-theme #product-product.anb-product-page .anb-product-aside {grid-template-columns:repeat(2,minmax(0,1fr));}
  body.anblab-theme #product-product.anb-product-page .anb-aside-card:last-child:nth-child(odd) {grid-column:1/-1;}
}
@media (max-width:767px) {
  body.anblab-theme #product-product.anb-product-page .anb-product-main {margin-bottom:12px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery {margin-bottom:16px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails {grid-template-columns:repeat(5,minmax(0,1fr));}
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child>a {
    aspect-ratio:6/5;max-height:460px;padding:12px;border-radius:18px;
  }
  body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions {right:14px;top:14px;gap:7px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-quick-actions>.btn {width:36px;height:36px;min-width:36px;flex-basis:36px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-eyebrow {padding-right:94px;}
  body.anblab-theme #product-product.anb-product-page .anb-buy-panel {padding:19px 18px;}
  body.anblab-theme #product-product.anb-product-page .anb-buy-panel h1 {font-size:23px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-aside {grid-template-columns:1fr;gap:11px;margin:17px 0 23px;}
  body.anblab-theme #product-product.anb-product-page .anb-aside-card:last-child:nth-child(odd) {grid-column:auto;}
  body.anblab-theme #product-product.anb-product-page .anb-aside-card {padding:17px 18px;}
  body.anblab-theme #product-product.anb-product-page .anb-product-full-details {margin-top:0;}
}
@media (max-width:400px) {
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails {grid-template-columns:repeat(4,minmax(0,1fr));}
  body.anblab-theme #product-product.anb-product-page .anb-product-gallery .thumbnails>li:first-child>a {padding:9px;}
}
