/* Shared shopping-page theme. Existing page layouts, IDs and behaviours remain. */
body.bf-shop{margin:0;background:#fffdfb;color:#243e53;font-family:Arial,Helvetica,sans-serif;line-height:1.6}
.bf-shop>main{width:min(1200px,calc(100% - 40px));max-width:1200px;margin:36px auto 60px;padding:0;color:#243e53;font-family:Arial,Helvetica,sans-serif;min-height:350px}
.bf-shop>main *{box-sizing:border-box;font-family:inherit}
.bf-shop>main :where(p,span,div,a,label,li,td,input,select){font-weight:400}
.bf-shop>main :is(h1,h2,h3,strong,th){font-weight:700}
.bf-shop>main h1{font-family:'Trebuchet MS',Arial,sans-serif;font-size:clamp(28px,3.5vw,42px);line-height:1.2;letter-spacing:-1.1px;color:#243e53;margin:16px 0}
.bf-shop>main h2{font-family:'Trebuchet MS',Arial,sans-serif;line-height:1.3;color:#243e53;margin:20px 0 16px}
.bf-shop>main h3{color:#243e53;line-height:1.45}
.bf-shop>main p{line-height:1.75}
.bf-shop>main a{color:#92375c;text-underline-offset:4px}
.bf-shop>main a:hover{color:#6d2945}
.bf-shop>main :is(a,button,input,select,summary):focus-visible{outline:3px solid #a92e60;outline-offset:3px}
.bf-shop>main :is(input,select){background:#fff;border:1px solid #d7dce4;border-radius:13px;padding:12px;font-size:15px;color:#243e53;max-width:100%;min-height:46px}
.bf-shop>main button{font-family:inherit;font-weight:700;cursor:pointer;min-height:44px}
.bf-shop>main [hidden]{display:none!important}
.bf-shop :is(.bf-cat-intro,.lead,.intro,.bf-search-meta,.wg-muted){color:#586d7c;font-size:15px}
.bf-shop :is(.bf-cat-card,.bf-search-card,.related-card,.wg-related-card,.wishlist-card){background:#fff;border:1px solid #e0e7ed;border-radius:23px;overflow:hidden;box-shadow:0 4px 0 #e7edf566}
.bf-shop :is(.bf-cat-photo,.bf-search-photo,.product-picture,.wg-photo){background:white}
.bf-shop :is(.bf-cat-body,.bf-search-card-body){padding:19px;border-top:1px solid #eff1f4;gap:12px}
.bf-shop :is(.bf-cat-name,.bf-search-name,.wg-related-name){font-weight:700;font-size:15px;color:#243e53}
.bf-shop :is(.bf-cat-brand,.bf-search-brand,.related-brand,.wg-related-brand){font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#8d3b5d}
.bf-shop :is(.bf-cat-price,.bf-search-price,.related-price,.wg-related-price,.price){position:static;color:#243e53;font-weight:800;font-size:23px}
.bf-shop>main :is(.bf-compare-btn,.bf-wishlist-btn,.wishlist-button,.remove,.remove-btn,.clear){border:1px solid #d8b4c5;border-radius:20px;background:#fce6ee;color:#7f3152;padding:11px 16px;font-size:13px;font-weight:700}
.bf-shop>main :is(.bf-compare-btn,.bf-wishlist-btn,.wishlist-button,.remove,.remove-btn,.clear):hover{background:#f6d3e1}
.bf-shop>main :is(.bf-compare-btn,.bf-wishlist-btn,.wishlist-button)[aria-pressed="true"]{background:#eadff3;border-color:#9a7cae;color:#533b6b}
.bf-shop>main :is(.bf-compare-nav,.bf-wishlist-nav,.wishlist-link,.wg-wishlist-link){display:inline-block;border-radius:22px;padding:10px 16px;margin:6px 8px 12px 0;background:#e9f2fa;color:#315774!important;font-size:13px;font-weight:700;text-decoration:none}
.bf-shop>main :is(.buy-button,.wg-shop,.buy-link,.bf-search-submit){display:inline-block;border-radius:25px;background:#a92e60;color:#fff!important;border:1px solid #a92e60;padding:14px 24px;font-size:15px;font-weight:700;text-decoration:none}
.bf-shop>main :is(.buy-button,.wg-shop,.buy-link,.bf-search-submit):hover{background:#872349}
.bf-shop :is(.bf-search-form,.bf-cat-toolbar){padding:22px;border:1px solid #e3ddec;border-radius:23px;background:#f4eef9;margin:24px 0}
.bf-shop .bf-search-form label{display:block;font-size:12px;font-weight:700;color:#4d4560;margin-bottom:7px}
.bf-shop .bf-cat-toolbar button{background:#a92e60;border:0;border-radius:22px;padding:12px 20px;color:#fff}
.bf-shop :is(.bf-search-message,.bf-cat-message,.message,.empty){background:#fff4d8;border:1px solid #e9ddbd;border-radius:20px;padding:24px;color:#625331}
.bf-shop :is(.bf-search-pages,.bf-cat-pages){gap:12px;margin:32px 0}
.bf-shop :is(.bf-search-pages,.bf-cat-pages) a{border:1px solid #d6dfe7;background:#eaf3fa;color:#315774;border-radius:22px;padding:10px 18px;text-decoration:none;font-weight:700}
.bf-shop :is(.bf-search-pages,.bf-cat-pages) a:hover{background:#dcebf6}
/* Category cards align their image, heading and description in shared rows. */
.bf-shop .bf-cat-tiles{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:15px;row-gap:0;align-items:stretch}
.bf-shop .bf-cat-tile{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:115px auto 1fr;gap:0;padding:12px 12px 18px;margin-bottom:16px;border:2px solid transparent;border-radius:23px;background:#fce8ee;color:#243e53;text-decoration:none;min-width:0}
.bf-shop .bf-cat-tile:nth-child(2){background:#e6f1fa}.bf-shop .bf-cat-tile:nth-child(3){background:#fff1cd}.bf-shop .bf-cat-tile:nth-child(4){background:#e5f2e9}.bf-shop .bf-cat-tile:nth-child(5){background:#eaeefa}.bf-shop .bf-cat-tile:nth-child(6){background:#f4e8f6}
.bf-shop .bf-cat-tile[aria-current="page"],.bf-shop .bf-cat-tile:hover{border-color:#a92e60}
.bf-shop .bf-cat-image{grid-row:1;width:100%;height:115px;object-fit:contain;border-radius:14px;background:transparent}
.bf-shop .bf-cat-tile strong{grid-row:2;font-size:16px;padding:12px 2px 5px;font-weight:700}
.bf-shop .bf-cat-tile small{grid-row:3;padding:0 2px;font-size:11px;line-height:1.65;color:#506071}
@supports(grid-template-rows:subgrid){.bf-shop .bf-cat-tile{grid-row:span 3;grid-template-rows:subgrid}}
.bf-shop .bf-cat-sub{border:1px solid #e3d8eb;border-radius:18px;background:#f4eef9;padding:16px;font-size:14px;color:#594469}
.bf-shop .bf-cat-sub[aria-current="page"],.bf-shop .bf-cat-sub:hover{background:#725482;color:#fff}
.bf-shop :is(.bf-advice,.bf-faq){background:#f1f6fa;border:1px solid #dce6ed;border-radius:24px;color:#243e53}
.bf-shop .bf-faq{background:#fff8e8}
/* Product details share the same generous panels and clear retailer action. */
.bf-shop :is(.product-detail,.wg-layout){gap:30px;margin-top:24px}
.bf-shop :is(.product-picture,.wg-photo){border:1px solid #e2e8ee;border-radius:27px;padding:28px;align-self:start}
.bf-shop :is(.product-info,.wg-details){background:#fcf0f4;border:1px solid #f0dfe7;border-radius:27px;padding:28px;min-width:0}
.bf-shop :is(.product-info,.wg-details) h1{font-size:clamp(25px,3vw,36px);margin:0 0 18px}
.bf-shop :is(.product-price,.wg-price){color:#92375c;font-size:36px;font-weight:800;margin:20px 0}
.bf-shop :is(.product-description,.product-specs,.wg-description){background:#f1f6fa;border:1px solid #e0e8ee;border-radius:24px;padding:26px;color:#243e53;margin-top:32px}
.bf-shop :is(.product-description,.wg-description) p{font-size:16px}
.bf-shop :is(.related-card,.wg-related-card) a{color:#243e53}
.bf-shop :is(.related-card,.wg-related-card) h3{font-size:15px}
.bf-shop .actions a,.bf-shop .actions button{border-radius:23px;background:#fce6ee;border:1px solid #d8b4c5;color:#7f3152;font-weight:700}
.bf-shop .table-wrap{border:1px solid #dce4eb;border-radius:24px;box-shadow:0 4px 0 #e7edf566}
.bf-shop .compare-table th:first-child,.bf-shop .compare-table td:first-child{background:#eaf2fa;color:#315774;font-weight:700}
.bf-shop .compare-table th,.bf-shop .compare-table td{border-color:#e0e7ee}
.bf-shop .compare-table h2{font-family:Arial,sans-serif;font-size:16px;letter-spacing:0}
.bf-shop .compare-table .buy-link{font-size:13px;padding:10px 14px}
.bf-shop .wishlist-card{padding:20px}
.bf-shop .wishlist-card h2{font-family:Arial,sans-serif;font-size:17px;line-height:1.5}
.bf-shop .wishlist-card .remove{position:static;margin-top:15px}
@media(max-width:1000px){.bf-shop .bf-cat-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.bf-shop>main{width:calc(100% - 28px);margin:24px auto 40px}.bf-shop :is(.product-info,.wg-details,.product-picture,.wg-photo){padding:20px}.bf-shop :is(.product-detail,.wg-layout){grid-template-columns:minmax(0,1fr);gap:20px}.bf-shop .bf-cat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-shop :is(.bf-search-form,.bf-cat-toolbar){padding:17px}.bf-shop .bf-cat-subs{grid-template-columns:repeat(2,minmax(0,1fr))}.bf-shop .bf-cat-tile{padding-inline:10px}.bf-shop .bf-cat-tile strong{font-size:16px}}
