/* ToolBuyer core styles — matches the approved mockups. */
:root{--tb-red:#e30000;--tb-red-text:#d40000;--tb-red-d:var(--tb-red);--tb-ink:#1a1a1a;--tb-ink2:#444;--tb-mute:#555;--tb-line:#e3e3e3;--tb-soft:#f2f2f0;--tb-soft2:#f7f7f5;--tb-dark:#111;--tb-green:#1e7b34;--tb-radius:16px;--tb-font:'Barlow',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--tb-cond:'Barlow Condensed','Barlow',system-ui,sans-serif;
--global-palette1:#e00000;--global-palette2:var(--tb-red);--global-palette3:#1a1a1a;--global-palette4:#333;--global-palette5:#444;--global-palette6:#666;--global-palette7:#f2f2f0;--global-palette8:#f7f7f5;--global-palette9:#fff;--global-body-font-family:var(--tb-font);--global-heading-font-family:var(--tb-font)}
body.tb{font-family:var(--tb-font);color:var(--tb-ink);background:#fff;font-size:17px;line-height:1.55}
body.tb h1,body.tb h2,body.tb h3,body.tb h4{font-family:var(--tb-font);color:var(--tb-ink)}
.tb a{color:inherit}
.tb-wrap{max-width:1240px;margin:0 auto;padding-left:24px;padding-right:24px;box-sizing:border-box}
.tb-i{width:22px;height:22px;flex:none;display:inline-block;vertical-align:middle}
.tb-hide-sm{display:inline}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Top bar */
.tb-topbar{background:var(--tb-dark);color:#ededed;font-size:14px}
.tb-topbar-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 24px;padding-top:8px;padding-bottom:8px}
.tb-topbar p{margin:0;display:flex;align-items:center;gap:6px}
.tb-topbar .tb-i{width:18px;height:18px}
.tb-topbar-links{gap:20px!important}
.tb-topbar a{color:#ededed;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.tb-topbar a:hover{color:#fff;text-decoration:underline}

/* Header */
.tb-header,#masthead.tb-header{background:#1a1a1a;color:#fff;position:relative;z-index:50}
.tb-header-row{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;padding-top:18px;padding-bottom:18px}
.tb-logo{display:block;line-height:0;flex:none}
.tb-logo-img{height:46px;width:auto;display:block}
.tb-logo-text{font:800 32px/1 var(--tb-cond);color:#fff;text-decoration:none}
.tb-logo-text span{color:var(--tb-red-text)}
.tb-search{flex:1 1 380px;min-width:0;position:relative}
.tb-search-basic{display:flex}
.tb-search-basic input[type=search]{flex:1;min-width:0;height:52px;border:0;border-radius:999px 0 0 999px;padding:0 22px;font:inherit;font-size:17px;color:var(--tb-ink);background:#fff;box-shadow:none;outline-offset:2px}
.tb-search-basic button{height:52px;padding:0 22px 0 18px;border:0;border-radius:0 999px 999px 0;background:var(--tb-red);color:#fff;font:inherit;font-weight:700;font-size:16px;display:flex;gap:8px;align-items:center;cursor:pointer}
.tb-search-basic button:hover{background:var(--tb-red-d)}
/* FiboSearch styled as a pill */
.tb-search .dgwt-wcas-search-wrapp{max-width:none!important;min-width:0!important}
.tb-search .dgwt-wcas-sf-wrapp{background:transparent!important;padding:0!important}
.tb-search .dgwt-wcas-search-input{height:52px!important;border:0!important;border-radius:999px!important;padding:0 130px 0 22px!important;font:inherit!important;font-size:17px!important;color:var(--tb-ink)!important;background:#fff!important}
.tb-search .dgwt-wcas-search-submit{height:52px!important;min-height:52px!important;top:0!important;right:0!important;left:auto!important;border-radius:0 999px 999px 0!important;background:var(--tb-red)!important;padding:0 22px!important;min-width:110px!important}
.tb-search .dgwt-wcas-search-submit:before{display:none!important}
.tb-search .dgwt-wcas-search-submit:hover{background:var(--tb-red-d)!important}
.tb-search .dgwt-wcas-ico-magnifier{fill:#fff!important}
.tb-search .dgwt-wcas-search-submit,.tb-search .dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit svg path,.tb-search .dgwt-wcas-ico-magnifier path{fill:#fff!important;color:#fff!important}
.tb-icons{display:flex;gap:22px;align-items:center}
.tb-ic{color:#fff!important;text-decoration:none;display:flex;flex-direction:column;align-items:center;font-size:13px;gap:3px;min-width:44px;position:relative}
.tb-ic .tb-i{width:26px;height:26px}
.tb-ic:hover span:last-child{text-decoration:underline}
.tb-count{position:absolute;top:-6px;right:0;min-width:20px;height:20px;padding:0 5px;box-sizing:border-box;border-radius:999px;background:var(--tb-red);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1}
.tb-count.is-empty{display:none}
.tb-menu-btn{display:none;background:transparent;border:0;color:#fff;font:inherit;font-size:13px;flex-direction:column;align-items:center;gap:2px;padding:0;cursor:pointer;min-width:44px}
.tb-menu-btn .tb-i{width:28px;height:28px}

/* Department menu */
.tb-nav{background:#fff;border-bottom:3px solid var(--tb-red);position:relative;z-index:40}
.tb-nav-head,.tb-nav-extra{display:none}
.tb-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 18px;font-size:15px;font-weight:700}
.tb-menu>li{position:static}
.tb-menu>li>a{display:block;color:var(--tb-ink);text-decoration:none;padding:13px 0;border-bottom:3px solid transparent;margin-bottom:-3px}
.tb-menu>li>a:hover,.tb-menu>li:focus-within>a{color:var(--tb-red-text);border-bottom-color:var(--tb-red)}
.tb-menu .tb-mi-trade>a{color:var(--tb-red-text)}
.tb-sub-toggle{display:none}
.tb-sub{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;box-shadow:0 18px 36px rgba(0,0,0,.14);border-top:1px solid var(--tb-line)}
.tb-menu>li.has-kids:hover>.tb-sub,.tb-menu>li.has-kids:focus-within>.tb-sub{display:block}
.tb-sub-inner{max-width:1240px;margin:0 auto;padding:20px 24px 26px;box-sizing:border-box}
.tb-sub-all{display:inline-block;font-weight:800;color:var(--tb-red-text)!important;text-decoration:none;margin-bottom:10px}
.tb-sub ul{list-style:none;margin:0;padding:0;columns:4 200px;column-gap:28px}
.tb-sub li{break-inside:avoid}
.tb-sub li a{display:block;padding:6px 0;color:var(--tb-ink);text-decoration:none;font-weight:600}
.tb-sub li a:hover{color:var(--tb-red-text);text-decoration:underline}
.tb-nav-scrim{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:90}

/* Buttons */
.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border-radius:999px;font-weight:800;text-decoration:none!important;font-size:16px;line-height:1.2;border:1px solid transparent;cursor:pointer}
.tb-btn-white{background:#fff;color:var(--tb-ink)!important}
.tb-btn-dark{background:var(--tb-ink);color:#fff!important}
.tb-btn-line{border-color:var(--tb-ink);color:var(--tb-ink)!important;background:#fff}
.tb-btn-red{background:var(--tb-red);color:#fff!important}
.tb-pill{display:inline-block;align-self:flex-start;background:var(--tb-red);color:#fff;font-size:13px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;padding:6px 12px;border-radius:999px}

/* Homepage */
.tb-home .entry-hero,.tb-home .entry-header,.home.tb .entry-hero-container-inner,.home.tb .page-title{display:none!important}
.home.tb .content-container.site-container{max-width:none;padding:0}
.home.tb .entry-content-wrap{padding:0!important}
.home.tb .content-bg,.home.tb .entry.single-entry{background:transparent;box-shadow:none}
.home.tb #primary{margin-top:0;margin-bottom:0}
.tb-hero{display:flex;flex-wrap:wrap;gap:18px;padding-top:24px;padding-bottom:8px}
.tb-hero-main{flex:2 1 560px;min-width:0;border-radius:18px;background:#161616;color:#fff;display:flex;flex-wrap:wrap;overflow:hidden}
.tb-hero-copy{flex:1 1 300px;padding:40px 36px;display:flex;flex-direction:column;justify-content:center;gap:14px}
.tb-hero-copy h1{margin:0;font:700 54px/1 var(--tb-cond);color:#fff!important}
.tb-hero-copy p{margin:0;font-size:18px;line-height:1.5;color:#d6d6d6}
.tb-hero-copy .tb-btn{align-self:flex-start;margin-top:6px}
.tb-hero-img{flex:1 1 260px;min-height:260px;background:#2a2a2a radial-gradient(circle at 70% 30%,#3a3a3a,#1f1f1f)}
.tb-hero-img{display:flex;align-items:center;justify-content:center}
.tb-hero-img img{width:100%;height:100%;max-height:380px;object-fit:contain;display:block;padding:18px;box-sizing:border-box;background:#fff;border-radius:0}
.tb-hero-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.tb-tile{flex:1;border-radius:18px;background:var(--tb-soft);color:var(--tb-ink)!important;text-decoration:none!important;padding:26px;display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:150px}
.tb-tile strong{font:700 30px/1 var(--tb-cond)}
.tb-tile span{color:var(--tb-ink2);line-height:1.45}
.tb-tile em{font-style:normal;font-weight:800;color:var(--tb-red-text)}
.tb-tile-red{background:var(--tb-red);color:#fff!important}
.tb-tile-red span,.tb-tile-red em{color:#fff}
.tb-trust{padding-top:14px;padding-bottom:14px}
.tb-trust-grid{background:var(--tb-soft2);border-radius:14px;padding:16px 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.tb-trust-item{display:flex;gap:12px;align-items:center;font-size:15px}
.tb-trust-item>span{display:flex;flex-direction:column;color:var(--tb-mute);font-size:14px}
.tb-trust-item strong{color:var(--tb-ink);font-size:15px}
.tb-trust-item a{color:var(--tb-mute);text-decoration:underline}
.tb-trust-item .tb-i{color:var(--tb-red-text);width:26px;height:26px}
.tb-cards{display:inline-flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tb-cards span{border:1px solid #cfcfcf;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:800;background:#fff;color:var(--tb-ink);letter-spacing:.2px}
.tb-sec{padding-top:32px;padding-bottom:8px}
.tb-h2{margin:0 0 18px!important;font:700 36px/1.05 var(--tb-cond)!important}
.tb-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:18px}
.tb-sec-head .tb-h2{margin:0!important}
.tb-sec-head a{font-weight:700;color:var(--tb-red-text);text-decoration:none}
.tb-dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.tb-dept{text-decoration:none!important;color:var(--tb-ink)!important;border-radius:16px;overflow:hidden;background:var(--tb-soft);display:flex;flex-direction:column;transition:transform .15s ease,box-shadow .15s ease}
.tb-dept:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.08)}
.tb-dept-img{height:170px;background:#e6e6e3;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tb-dept-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:12px;box-sizing:border-box}
.tb-dept-name{padding:16px 18px;font-weight:800;font-size:19px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.tb-dept-name b{color:var(--tb-red-text)}
.tb-makes{border-radius:18px;background:var(--tb-soft);padding:26px 28px;display:flex;flex-wrap:wrap;gap:18px 28px;align-items:center;justify-content:space-between}
.tb-makes-copy{flex:1 1 300px}
.tb-makes-copy .tb-h2{margin-bottom:6px!important;font-size:32px!important}
.tb-makes-copy p{margin:0;color:var(--tb-ink2)}
.tb-makes-list{flex:2 1 420px;display:flex;flex-wrap:wrap;gap:8px}
.tb-makes-list a{padding:10px 16px;border-radius:999px;background:#fff;color:var(--tb-ink);text-decoration:none;font-weight:700}
.tb-makes-list a:hover{background:var(--tb-ink);color:#fff}
.tb-makes-list a.is-all{background:var(--tb-ink);color:#fff}
.tb-help{padding-top:28px;padding-bottom:48px;width:100%;max-width:1240px;align-self:stretch}
.tb-help-box{border:1px solid var(--tb-line);border-radius:18px;padding:22px 26px;display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between}
.tb-help-copy{display:flex;gap:14px;align-items:center}
.tb-help-copy .tb-i{width:30px;height:30px;color:var(--tb-red-text)}
.tb-help-copy span{display:flex;flex-direction:column;color:var(--tb-mute)}
.tb-help-copy strong{font-size:19px;color:var(--tb-ink)}
.tb-help-btns{display:flex;flex-wrap:wrap;gap:10px}

/* Footer */
.tb-footer{background:var(--tb-dark);color:#cfcfcf;font-size:15px}
.tb-footer-cols{padding-top:40px;padding-bottom:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px}
.tb-footer-cols>div{display:flex;flex-direction:column;gap:8px}
.tb-footer h2{color:#fff!important;font:700 17px/1.3 var(--tb-font)!important;margin:0 0 4px!important}
.tb-footer a{color:#cfcfcf;text-decoration:none}
.tb-footer a:hover{color:#fff;text-decoration:underline}
.tb-footer-pay{padding-bottom:18px}
.tb-footer-legal{border-top:1px solid #2a2a2a;padding-top:16px;padding-bottom:28px;font-size:13px;color:#9a9a9a}
.tb-footer-legal p{margin:0}

/* WooCommerce: products grid, cards and buttons */
.tb .woocommerce ul.products,.tb ul.products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin:0 0 24px!important;padding:0!important}
.tb ul.products:before,.tb ul.products:after{display:none!important}
.tb ul.products li.product{width:auto!important;margin:0!important;float:none!important;border:1px solid var(--tb-line);border-radius:16px;overflow:hidden;background:#fff;display:flex;flex-direction:column;padding:0!important;text-align:left}
.tb ul.products li.product .woocommerce-loop-image-link,.tb ul.products li.product a img{background:var(--tb-soft2)}
.tb ul.products li.product a img{aspect-ratio:1/1;object-fit:contain;width:100%;height:auto;margin:0!important;mix-blend-mode:multiply}
.tb ul.products li.product .product-details,.tb ul.products li.product .entry-content-wrap{padding:14px 16px 16px!important;display:flex;flex-direction:column;gap:8px;flex:1}
.tb ul.products li.product .woocommerce-loop-product__title{font-size:16px!important;line-height:1.35!important;font-weight:700!important;margin:0!important;padding:0!important;color:var(--tb-ink)}
.tb ul.products li.product .woocommerce-loop-product__title a{color:var(--tb-ink);text-decoration:none}
.tb ul.products li.product .price{font-size:24px!important;font-weight:800!important;color:var(--tb-ink)!important;margin-top:auto!important}
.tb ul.products li.product .price .woocommerce-price-suffix{font-size:12px;font-weight:600;color:var(--tb-mute)}
.tb ul.products li.product .button,.tb ul.products li.product .added_to_cart{width:100%;justify-content:center;border-radius:999px!important;background:var(--tb-red)!important;color:#fff!important;font-weight:800!important;font-size:16px!important;padding:12px 16px!important;text-align:center;border:0!important}
.tb ul.products li.product .button:hover{background:var(--tb-red-d)!important}
.tb .woocommerce-loop-product__link{text-decoration:none}
.tb .tb-stock-line{font-size:13px;color:var(--tb-green);font-weight:700;order:3}
.tb .tb-stock-line.is-out{color:var(--tb-red-text)}
.tb ul.products li.product .product-action-wrap{opacity:1!important;visibility:visible!important;transform:none!important;position:static!important;margin-top:4px;order:4}
.tb ul.products li.product .price{order:2}
.tb ul.products li.product .woocommerce-loop-product__title{order:1}
.tb ul.products li.product .product-action-wrap .kadence-svg-iconset{display:none}
.tb ul.products li.product .product-action-wrap{display:block!important;width:100%;align-self:stretch}
.tb ul.products li.product .product-details>*{align-self:stretch}
.tb ul.products li.product .product-action-wrap .button{display:flex!important;align-items:center;width:100%!important;text-transform:none!important;letter-spacing:0!important;line-height:1.2!important;min-height:46px;box-sizing:border-box}
.tb-subcats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;width:100%}
.tb-subcats a{padding:9px 14px;border-radius:999px;background:var(--tb-soft);color:var(--tb-ink);text-decoration:none;font-weight:700;font-size:15px}
.tb-subcats a span{color:var(--tb-mute);font-weight:600;font-size:13px}
.tb-subcats a:hover{background:var(--tb-ink);color:#fff}
.tb-subcats a:hover span{color:#ddd}
.tb-lower-desc{margin:32px 0 8px;padding:22px 24px;background:var(--tb-soft2);border-radius:16px;color:var(--tb-ink2)}
.tb-lower-desc p:last-child{margin-bottom:0}
.tb ul.products li.product .button.loading{opacity:.7}
.tb ul.products li.product .added_to_cart{margin-top:6px;background:var(--tb-ink)!important}
.tb .onsale{background:var(--tb-red)!important;border-radius:999px!important}
.tb .button,.tb button.button,.tb .wp-element-button,.tb .single_add_to_cart_button{border-radius:999px!important}
.tb .single_add_to_cart_button,.tb .checkout-button,.tb #place_order{background:var(--tb-red)!important;color:#fff!important;font-weight:800!important}
.tb .single_add_to_cart_button:hover,.tb .checkout-button:hover,.tb #place_order:hover{background:var(--tb-red-d)!important}
.tb .woocommerce-breadcrumb,.tb .kadence-breadcrumbs{font-size:14px;color:var(--tb-mute)}
.tb .price,.tb .woocommerce-Price-amount{color:var(--tb-ink)}

/* Mobile */
@media (max-width:900px){
 .tb-hide-sm{display:none!important}
 .tb-wrap{padding-left:16px;padding-right:16px}
 .tb-header-row{gap:10px 10px;padding-top:10px;padding-bottom:12px}
 .tb-menu-btn{display:flex;order:0}
 .tb-logo{order:1;margin-right:auto}
 .tb-logo-img,#masthead .tb-logo-img{height:30px!important}
 .tb-header-row{flex-wrap:wrap}
 .tb-menu-btn{min-width:40px}
 .tb-hero-img:empty{display:none}
 .tb-ic{min-width:38px}
 .tb-icons{order:2;gap:8px}
 .tb-ic-track,.tb-ic-points{display:none}
 .tb-ic span:not(.tb-count){font-size:11px}
 .tb-search{order:3;flex:1 1 100%}
 .tb-search-basic input[type=search],.tb-search .dgwt-wcas-search-input{height:48px!important}
 .tb-search .dgwt-wcas-search-submit{height:48px!important;min-height:48px!important;min-width:56px!important;padding:0 16px!important}
 .tb-search .dgwt-wcas-search-input{padding-right:70px!important}
 .tb-search-basic button{height:48px}
 .tb-search-basic button span{display:none}
 .tb-topbar-row{justify-content:center;text-align:center}
 .tb-topbar-links{display:none!important}
 .tb-nav{position:fixed;top:0;left:0;bottom:0;width:min(88vw,360px);z-index:100;border:0;transform:translateX(-102%);transition:transform .22s ease;overflow-y:auto;box-shadow:0 0 40px rgba(0,0,0,.3);visibility:hidden}
 .tb-nav.is-open{transform:none;visibility:visible}
 .admin-bar .tb-nav{top:46px}
 .tb-nav-head{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#1a1a1a;color:#fff;font-size:18px}
 .tb-nav-close{background:transparent;border:0;color:#fff;padding:6px;cursor:pointer}
 .tb-nav .tb-wrap{padding:0}
 .tb-menu{flex-direction:column;gap:0;font-size:17px}
 .tb-menu>li{position:relative;border-bottom:1px solid var(--tb-line)}
 .tb-menu>li>a{padding:15px 56px 15px 16px;border:0;margin:0}
 .tb-sub-toggle{display:flex;position:absolute;right:0;top:0;width:52px;height:54px;align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer;color:var(--tb-ink)}
 .tb-sub-toggle[aria-expanded=true] .tb-i{transform:rotate(90deg)}
 .tb-sub,.tb-menu>li.has-kids:hover>.tb-sub,.tb-menu>li.has-kids:focus-within>.tb-sub{display:none;position:static;box-shadow:none;border:0;background:var(--tb-soft2)}
 .tb-menu>li.is-open>.tb-sub{display:block}
 .tb-sub-inner{padding:6px 16px 14px}
 .tb-sub ul{columns:1}
 .tb-sub li a{padding:10px 0}
 .tb-nav-extra{display:flex;flex-direction:column;padding:12px 16px 24px;gap:4px}
 .tb-nav-extra a{padding:10px 0;font-weight:700;text-decoration:none;color:var(--tb-ink)}
 .tb-hero{padding-top:14px}
 .tb-hero-copy{padding:26px 22px}
 .tb-hero-copy h1{font-size:38px}
 .tb-hero-img{min-height:160px}
 .tb-tile{min-height:0;padding:20px}
 .tb-tile strong{font-size:26px}
 .tb-h2{font-size:30px!important}
 .tb-dept-grid{grid-template-columns:repeat(2,1fr);gap:12px}
 .tb-dept-img{height:120px}
 .tb-dept-name{font-size:16px;padding:12px}
 .tb ul.products{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}
 .tb ul.products li.product .woocommerce-loop-product__title{font-size:14px!important}
 .tb ul.products li.product .price{font-size:20px!important}
 .tb ul.products li.product .button{font-size:14px!important;padding:10px 8px!important}
 body.tb{font-size:16px}
}

/* Product page */
@media (min-width:901px){#masthead .tb-logo-img{height:46px!important;width:auto!important;max-width:none}}
@media (max-width:900px){#masthead .tb-logo-img{height:30px!important;width:auto!important;max-width:none}}
.tb.single-product .product_title{font:700 34px/1.12 var(--tb-font)!important}
.tb.single-product .summary .price{font-size:30px!important;font-weight:800!important;color:var(--tb-ink)!important}
.tb.single-product .summary .price .woocommerce-price-suffix{font-size:15px;font-weight:600;color:var(--tb-mute)}
.tb.single-product .stock.in-stock{color:var(--tb-green)!important;font-weight:700}
.tb.single-product .stock.out-of-stock{color:var(--tb-red-text)!important;font-weight:700}
.tb.single-product form.cart{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;margin-bottom:14px!important}
.tb.single-product .summary .price{margin:10px 0 14px!important}
.tb.single-product .woocommerce-product-details__short-description{margin-bottom:14px}
.tb.single-product form.cart .quantity input.qty{height:54px;border-radius:12px;width:72px;font-size:18px}
.tb.single-product .single_add_to_cart_button{flex:1 1 220px;height:54px;font-size:19px!important;padding:0 28px!important}
.tb-buybox{margin:14px 0 18px;display:flex;flex-direction:column;gap:12px}
.tb-fast{display:flex;gap:8px;align-items:center;margin:0;font-size:15px;color:var(--tb-ink2)}
.tb-fast .tb-i{color:var(--tb-green);width:20px;height:20px}
.tb-deliv{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.tb-deliv-o{border:1px solid var(--tb-line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;font-size:14px}
.tb-deliv-o strong{font-size:15px}
.tb-deliv-o span{color:var(--tb-green);font-weight:700}
.tb-trust-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.tb-trust-list li{display:flex;gap:8px;align-items:center}
.tb-trust-list .tb-i{color:var(--tb-red-text);width:20px;height:20px}
.tb-trust-list a{text-decoration:underline}
.tb.single-product .product_meta{font-size:13px;color:var(--tb-mute)}
.tb-sections{clear:both;display:flex;flex-direction:column;gap:14px;margin:28px 0}
.tb-psec{border:1px solid var(--tb-line);border-radius:16px;padding:22px 24px}
.tb-psec h2{font:700 28px/1.1 var(--tb-cond)!important;margin:0 0 12px!important}
.tb-psec-body p:last-child{margin-bottom:0}
.tb-psec table{width:100%;border-collapse:collapse;margin:0}
.tb-psec th,.tb-psec td{padding:9px 12px;border-bottom:1px solid var(--tb-line);text-align:left;font-size:15px;vertical-align:top}
.tb-psec th{width:38%;font-weight:700;background:var(--tb-soft2)}
.tb-psec .woocommerce-product-attributes{border:0;table-layout:fixed}
.tb-psec table.tb-spec-extra{table-layout:fixed}
.tb-psec .woocommerce-product-attributes th,.tb-psec .woocommerce-product-attributes td{width:auto;padding:9px 12px!important;font-style:normal!important;border:0!important;border-bottom:1px solid var(--tb-line)!important;background:transparent}
.tb-psec .woocommerce-product-attributes th{width:38%!important;background:var(--tb-soft2)!important;font-weight:700}
.tb-psec .woocommerce-product-attributes tr:nth-child(even) td,.tb-psec .woocommerce-product-attributes tr:nth-child(odd) td{background:transparent!important}
.tb-psec .woocommerce-product-attributes p{margin:0}
.tb .upsells.products>h2,.tb .related.products>h2{font:700 32px/1.1 var(--tb-cond)!important;margin:10px 0 16px}
@media (max-width:900px){
 .tb.single-product .product_title{font-size:26px!important}
 .tb.single-product .summary .price{font-size:26px!important}
 .tb-psec{padding:16px}
 .tb-psec h2{font-size:24px!important}
 .tb-psec th{width:42%}
}

/* 18+ */
.tb-18{display:inline-block;background:#1a1a1a;color:#fff;font-size:12px;font-weight:800;letter-spacing:.4px;padding:4px 9px;border-radius:999px;margin:0 0 8px}
.tb ul.products li.product .tb-18{position:absolute;top:10px;left:10px;z-index:2;margin:0}
.tb ul.products li.product{position:relative}
.tb-18-note{background:#fff4e5;border-left:4px solid var(--tb-red);padding:10px 12px;border-radius:8px;font-size:14px;margin:4px 0 12px}
.tb-18-banner{background:#fff4e5;border-left:4px solid var(--tb-red);padding:12px 14px;border-radius:8px;font-size:15px;margin:0 0 18px;font-weight:600}
.tb-18-banner .tb-age-steps-list{margin:6px 0 10px 20px;padding:0;font-weight:400}.tb-18-banner .tb-age-steps-list li{margin:0 0 6px;line-height:1.45}.tb-18-banner .tb-age-more{font-weight:400;font-size:13px}.tb-18-banner .tb-age-why{font-weight:400}.tb-18-banner .tb-age-nudge{background:#fff;border:1px solid #f0d2b0;border-radius:8px;padding:10px 12px;margin-top:10px}.tb-18-banner .tb-age-nudge p{font-weight:400}
.tb-18-banner .tb-age-alt{font-weight:400;font-size:13px;color:#555;margin:10px 0 0}.tb-18-banner .tb-age-alt a{color:#555;text-decoration:underline}.tb-18-banner p{margin:0 0 8px}.tb-18-banner p:last-child{margin-bottom:0}
body:not(.tb-has-18) .wc-block-components-address-form__toolbuyer-age-confirm,body:not(.tb-has-18) [class*="toolbuyer-age-confirm"]{display:none!important}

/* Basket & checkout */
.tb .wc-block-cart__submit-button,.tb .wc-block-components-checkout-place-order-button{background:var(--tb-red)!important;color:#fff!important;border-radius:999px!important;font-weight:800!important;font-size:18px!important;min-height:56px}
.tb .wc-block-cart__submit-button:hover,.tb .wc-block-components-checkout-place-order-button:hover{background:var(--tb-red-d)!important}
.tb .wc-block-cart__submit-button .wc-block-components-button__text,.tb .wc-block-components-checkout-place-order-button .wc-block-components-button__text{color:#fff!important}
.woocommerce-cart.tb #primary,.woocommerce-checkout.tb #primary{margin-top:24px}
.tb .wc-block-components-title,.tb .wc-block-cart__totals-title{font-weight:800!important}
.tb .wc-block-components-text-input input,.tb .wc-block-components-combobox .wc-block-components-combobox-control input,.tb .wc-blocks-components-select__select{border-radius:10px!important}

/* Loyalty */
.tb-earn{display:flex;gap:8px;align-items:center;font-size:15px;margin:0 0 12px;color:var(--tb-ink2)}
.tb-earn .tb-i{color:#f5a300;width:20px;height:20px}
.tb-ty-points{display:flex;gap:10px;align-items:center;background:#fff8e1;border:1px solid #f0e2b0;border-radius:12px;padding:14px 16px;margin:0 0 20px;font-size:16px}
.tb-ty-points .tb-i{color:#f5a300;width:26px;height:26px}
.tb-loyal{display:flex;flex-direction:column;gap:16px}
.tb-card{background:linear-gradient(135deg,#e00000,#8c0000);color:#fff;border-radius:18px;padding:20px 22px;max-width:440px;box-shadow:0 10px 26px rgba(224,0,0,.25)}
.tb-card-top{display:flex;justify-content:space-between;gap:10px;font-size:15px;opacity:.95}
.tb-card-mid{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:14px 0 8px}
.tb-card-bal{display:block;font:700 46px/1 var(--tb-cond)}
.tb-card-lbl{display:block;font-size:14px;opacity:.9}
.tb-card-val{display:block;font-size:14px;font-weight:700;margin-top:4px}
.tb-card-val .woocommerce-Price-amount{color:#fff}
.tb-card-qr{background:#fff;padding:6px;border-radius:8px;line-height:0}
.tb-card-qr img,.tb-card-qr canvas{display:block}
.tb-card-name{font-weight:700;letter-spacing:.5px;text-transform:uppercase;font-size:14px}
.tb-loyal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.tb-loyal-box{border:1px solid var(--tb-line);border-radius:16px;padding:18px 20px}
.tb-loyal-box h3{margin:0 0 8px;font:700 24px/1.1 var(--tb-cond)}
.tb-inline-form{display:flex;gap:8px;flex-wrap:wrap}
.tb-inline-form input[type=text],.tb-inline-form select{flex:1 1 160px;min-height:46px;border-radius:10px;padding:0 12px;font-size:16px}
.tb-inline-form .button{min-height:46px;background:var(--tb-red)!important;color:#fff!important;font-weight:800}
.tb-small{font-size:13px;color:var(--tb-mute);margin:8px 0 0}
.tb-how{margin:0;padding-left:20px}
.tb-hist{width:100%;border-collapse:collapse;font-size:15px}
.tb-hist th,.tb-hist td{padding:8px 6px;border-bottom:1px solid var(--tb-line);text-align:left}
.tb-hist .num{text-align:right;font-weight:800}
.tb-hist .pos{color:var(--tb-green)}
.tb-hist .neg{color:var(--tb-red-text)}
/* Sticky add to basket (phones) */
.tb-sticky{position:fixed;left:0;right:0;bottom:0;z-index:80;background:#fff;border-top:1px solid var(--tb-line);box-shadow:0 -6px 18px rgba(0,0,0,.08);padding:10px 16px calc(10px + env(safe-area-inset-bottom));display:none;align-items:center;gap:12px;transform:translateY(110%);transition:transform .2s ease}
.tb-sticky.is-on{transform:none}
.tb-sticky-price{font-weight:800;font-size:20px;white-space:nowrap}
.tb-sticky-price small{display:block;font-size:11px;font-weight:600;color:var(--tb-mute)}
.tb-sticky button{flex:1;min-height:50px;border:0;border-radius:999px;background:var(--tb-red);color:#fff;font:inherit;font-weight:800;font-size:17px;cursor:pointer}
@media (max-width:900px){.tb-sticky{display:flex}.single-product.tb .tb-footer{padding-bottom:80px}}

/* Trade */
.tb-trade-form{max-width:760px}
.tb-trade-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 16px}
.tb-trade-form label{display:block;font-weight:700;font-size:15px;margin-bottom:4px}
.tb-trade-form input,.tb-trade-form select,.tb-trade-form textarea{width:100%;min-height:46px;border-radius:10px;padding:8px 12px;font-size:16px;box-sizing:border-box}
.tb-trade-form .tb-btn{border:0}
.tb-hp{position:absolute!important;left:-9999px!important}
.tb-trade-ok{background:#eaf6ec;border-left:4px solid var(--tb-green);padding:14px 16px;border-radius:8px}
.tb-trade-err{background:#fbeaea;border-left:4px solid var(--tb-red);padding:14px 16px;border-radius:8px;margin-bottom:12px}
.tb-trade-tag{display:inline-block;background:var(--tb-ink);color:#fff;font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px;vertical-align:middle}
/* Compact page titles */
.tb .entry-hero .entry-hero-container-inner{background:var(--tb-soft)!important}
.tb .entry-hero .entry-hero-container-inner .entry-header{min-height:0!important;padding-top:26px!important;padding-bottom:22px!important}
.tb .entry-hero h1{font:700 40px/1.1 var(--tb-cond)!important}
.tb .content-area{margin-top:28px}
@media (max-width:900px){.tb .entry-hero h1{font-size:30px!important}.tb .content-area{margin-top:18px}}
.tb-search-fix{width:100%;background:#fff8e1;border:1px solid #f0e2b0;border-radius:10px;padding:10px 14px;margin:0 0 16px}
.tb-makes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:0 0 24px;width:100%}
.tb-makes-grid a{display:flex;flex-direction:column;gap:2px;padding:16px;border:1px solid var(--tb-line);border-radius:14px;text-decoration:none;color:var(--tb-ink);background:#fff;transition:border-color .15s,box-shadow .15s}
.tb-makes-grid a:hover{border-color:var(--tb-red);box-shadow:0 6px 16px rgba(0,0,0,.06)}
.tb-makes-grid strong{font-size:18px}
.tb-makes-grid span{font-size:13px;color:var(--tb-mute)}
@media (max-width:900px){.tb-makes-grid{grid-template-columns:repeat(2,1fr)}}
.tb-heard{border:1px solid var(--tb-line);border-radius:14px;padding:14px 16px;margin:0 0 20px}
.tb-heard p{margin:0 0 10px}
.tb-heard-opts{display:flex;flex-wrap:wrap;gap:8px}
.tb-heard-opts button{border:1px solid var(--tb-line);background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;color:var(--tb-ink)}
.tb-heard-opts button:hover{border-color:var(--tb-ink)}
.tb-noresults{border:1px solid var(--tb-line);border-radius:16px;padding:24px;margin:10px 0 30px}
.tb-noresults h2{font:700 30px/1.1 var(--tb-cond)!important;margin:0 0 8px}
.tb-noresults h3{margin:22px 0 10px}

/* Added-to-basket drawer */
.tb-drawer{position:fixed;inset:0;z-index:120;background:rgba(0,0,0,.45);display:flex;justify-content:flex-end}
.tb-drawer[hidden]{display:none}
.tb-drawer-panel{background:#fff;width:min(420px,100%);height:100%;padding:20px;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;box-shadow:-10px 0 30px rgba(0,0,0,.2);overflow:auto}
.tb-drawer-head{display:flex;justify-content:space-between;align-items:center;font-size:20px}
.tb-drawer-x{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:var(--tb-ink)}
.tb-drawer-item{display:flex;gap:12px;align-items:center;border:1px solid var(--tb-line);border-radius:12px;padding:10px}
.tb-drawer-img{width:72px;height:72px;flex:none;background:var(--tb-soft2);border-radius:8px;overflow:hidden}
.tb-drawer-img img{width:100%;height:100%;object-fit:contain}
.tb-drawer-name{font-weight:700;line-height:1.3}
.tb-drawer-price{font-weight:800;font-size:18px;margin-top:4px}
.tb-drawer-note{margin:0;color:var(--tb-green);font-weight:700;font-size:14px}
.tb-drawer .tb-btn{width:100%;box-sizing:border-box;font-size:17px;min-height:52px}
.tb-drawer-basket{text-align:center;font-weight:700}
.admin-bar .tb-drawer-panel{padding-top:52px}
.tb ul.products li.product .added_to_cart{display:none!important}
@media (max-width:900px){.tb-drawer{align-items:flex-end}.tb-drawer-panel{height:auto;max-height:90vh;width:100%;border-radius:18px 18px 0 0}}
html body.tb ul.products li.product .product-action-wrap{padding:0!important}
html body.tb ul.products li.product .product-action-wrap a.button,html body.tb ul.products li.product .product-action-wrap .button{width:100%!important;max-width:none!important;display:flex!important;justify-content:center}
@media (max-width:900px){html body.tb ul.products li.product .product-details{padding:10px 10px 12px!important}html body.tb ul.products li.product .price .woocommerce-price-suffix{display:block;font-size:11px}html body.tb ul.products li.product .tb-stock-line{font-size:12px}}

/* Accessibility: clear keyboard focus, readable small text, contrast */
.tb :focus-visible{outline:3px solid #ffbf47!important;outline-offset:2px!important;box-shadow:0 0 0 5px #111!important}
.tb .product_meta,.tb .product_meta *{font-size:14px!important}
.tb .tb-sec-head a{color:var(--tb-red-text)}
.tb .tb-makes-list a.is-all{color:#fff;text-decoration:underline}
.tb .tb-stock-line.is-out{color:var(--tb-red-text)}
.tb .tb-cards span{font-size:12px}
.tb-page-h1{font-size:30px;line-height:1.2;margin:8px 0 18px}
@media (forced-colors:active){.tb-btn,.button,button{border:2px solid ButtonText}}
/* Checkout edit controls */
.tb-co-edit{display:flex;align-items:center;gap:6px;margin-top:8px}
.tb-co-edit button{min-width:32px;height:32px;border:1px solid #c9c9c4;background:#fff;border-radius:8px;font:inherit;font-weight:700;font-size:16px;line-height:1;cursor:pointer;color:var(--tb-ink);padding:0 8px}
.tb-co-edit button:hover{border-color:var(--tb-ink)}
.tb-co-edit .tb-co-q{min-width:22px;text-align:center;font-weight:700}
.tb-co-edit .tb-co-rm{font-size:14px;margin-left:6px;border-color:transparent;text-decoration:underline;color:var(--tb-red-text)}
.tb-co-edit.is-busy{opacity:.5;pointer-events:none}
/* Order received: thumbnails, compact question, collect box */
.tb-oi{display:inline-flex;align-items:center;gap:12px}
.tb-oi-img{width:56px!important;height:56px!important;object-fit:contain;border:1px solid var(--tb-line);border-radius:8px;background:#fff;flex:none}
.tb-heard{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 14px!important}
.tb-heard label{font-weight:700;font-size:15px}
.tb-heard label span{font-weight:400;color:var(--tb-mute)}
.tb-heard select{font:inherit;font-size:15px;padding:6px 10px;border:1px solid #c9c9c4;border-radius:8px;background:#fff;max-width:100%}
.tb-heard p{margin:0}
.tb-collect-box{background:#fff;border:1px solid var(--tb-line);border-left:5px solid var(--tb-red);border-radius:12px;padding:16px 18px;margin:0 0 20px}
.tb-collect-box h2{margin:0 0 6px;font-size:22px}
.tb-est{margin:6px 0 0;font-size:15px;font-weight:700;color:#1d7a3a}
/* Department menu: one tidy row on desktop */
@media (min-width:901px){
 .tb-menu{flex-wrap:nowrap;justify-content:space-between;gap:0 10px;font-size:clamp(13px,1.08vw,15px)}
 .tb-menu>li>a{white-space:nowrap}
}
@media (min-width:901px) and (max-width:1199px){
 .tb-menu{flex-wrap:wrap;justify-content:center;gap:0 22px}
}
/* 30 Oct evening: real payment logos, green Click & Collect, highlighted question, Yoti step */
.tb-cards{gap:6px;align-items:center}
.tb .tb-cards span{border:0;padding:0;background:none;font-size:0}
.tb-cards img{display:block;height:24px;width:auto;border-radius:4px;background:#fff}
.tb-collect-box{background:#edf7ef;border-color:#cde6d3;border-left-color:#1d7a3a}
.tb-heard{background:#fff6d6!important;border-color:#efd27a!important}
.tb-18-banner p{margin:0 0 10px}
.tb-18-banner p:last-child{margin-bottom:0}
.tb-18-banner .tb-btn{display:inline-block;text-decoration:none}
.tb-yoti-ok{color:#1d7a3a}
/* Yoti box */
.tb-yoti{background:#fff4e5;border-left:5px solid var(--tb-red);border-radius:12px;padding:18px 20px;margin:0 0 24px}
.tb-yoti h2{margin:0 0 6px;font-size:22px}
.tb-yoti-msg{font-weight:700}
/* v2: fuller page, snappier USP bar, cleaner hero */
body.tb,body.tb #wrapper.site{background:#efefec!important}
.tb .content-bg:not(.single-entry),.tb .site-main .entry.content-bg{background:#fff}
.home.tb .entry.content-bg{background:transparent!important;box-shadow:none!important}
.tb-sec-head,.tb-section{background:transparent}
.tb-wrap,.tb-sub-inner{max-width:1400px}
.tb-topbar{background:var(--tb-red);color:#fff;font-size:15px}
.tb-topbar-row{justify-content:center}
.tb-usps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 28px;width:100%;align-items:center}
.tb-usps li{display:flex;align-items:center;gap:7px;white-space:nowrap}
.tb-usps strong{font-weight:800;letter-spacing:.3px}
.tb-usps .tb-i{width:20px;height:20px}
.tb-usps a{color:#fff!important;text-decoration:none;display:flex;align-items:center;gap:7px}
.tb-usp-main{font-size:16px}
.tb-nav{background:#fff}
.tb-hero-img{background:#fff!important;padding:0;border-radius:0}
.tb-hero-img img{max-height:none!important;height:100%!important;padding:28px!important;background:#fff!important}
.tb-hero-main{background:#161616}
.tb-trust-grid{background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.tb-trust-item .tb-i{width:30px;height:30px}
.tb-trust-item strong{font-size:16px}
.tb-tile:not(.tb-tile-red),.tb-dept,.tb-makes,.tb-help-box,.tb-loyal-box,.tb-psec,.tb-noresults,.tb-heard,.tb-makes-grid a{background:#fff}
.tb-dept-img{background:#fff}
.tb-makes-list a{background:var(--tb-soft)}
.tb-help-box{border-color:transparent}
.tb .site-main .entry.content-bg,.tb .woocommerce-products-header{border-radius:16px}
.home.tb .content-bg,.home.tb .entry.single-entry{background:transparent!important}
.tb ul.products li.product{border-color:#e6e6e3;box-shadow:0 1px 2px rgba(0,0,0,.04)}
@media (max-width:900px){.tb-hero-img img{height:220px!important;width:100%!important;object-fit:contain!important;padding:16px!important}.tb-hero-img{min-height:0!important;height:auto!important}.tb-usps{justify-content:center}.tb-usp-main{font-size:15px}}
@media (prefers-reduced-motion:reduce){.tb-nav,.tb-dept{transition:none}}

/* Brand red = logo red. Buttons: white bold text. Small red text uses a slightly deeper shade so it stays readable. */
:root{--global-palette1:#e30000;--global-palette2:#c80000}
.tb .button,.tb a.button,.tb button.button,.tb input.button,.tb .woocommerce-button,.tb .wp-element-button,.tb .wc-block-components-button:not(.is-link),.tb .wc-block-components-checkout-place-order-button,.tb .single_add_to_cart_button,.tb .tb-btn-red{background:var(--tb-red)!important;color:#fff!important;font-weight:700!important;border-color:var(--tb-red)!important}
.tb .button:hover,.tb a.button:hover,.tb button.button:hover,.tb .woocommerce-button:hover,.tb .wp-element-button:hover,.tb .wc-block-components-button:not(.is-link):hover,.tb .single_add_to_cart_button:hover,.tb .tb-btn-red:hover{background:#c80000!important;border-color:#c80000!important;color:#fff!important}
.tb .woocommerce-orders-table .button{padding:8px 16px!important;font-size:15px!important;border-radius:999px!important;margin:2px 4px 2px 0}

.tb .tb-buynow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 12px;width:100%;margin:10px 0 4px;padding:12px 18px;border:0;border-radius:999px;background:#1a1a1a;color:#fff;font:inherit;font-size:17px;font-weight:700;cursor:pointer}
.tb .tb-buynow:hover{background:#000}
.tb .tb-buynow .tb-cards{margin:0}
.tb .tb-buynow .tb-cards img{height:20px}

.tb-co-edit input.tb-co-q{width:58px;height:32px;text-align:center;font:inherit;font-weight:700;font-size:16px;border:1px solid #c9c9c4;border-radius:8px;padding:0 4px;-moz-appearance:textfield}
.tb-co-edit input.tb-co-q::-webkit-outer-spin-button,.tb-co-edit input.tb-co-q::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.tb-co-edit{flex-wrap:wrap;row-gap:6px}
.tb-co-edit .tb-co-rm{white-space:nowrap;flex:none;min-width:auto;padding:0 4px}
.tb-co-edit button,.tb-co-edit input.tb-co-q{flex:none}
.tb-co-edit{gap:4px}
.tb-co-edit button{min-width:30px;height:30px;padding:0 6px}
.tb-co-edit input.tb-co-q{width:46px;height:30px}
.tb-co-edit .tb-co-rm{margin-left:4px;padding:0 2px}

/* Cookie banner */
.tb-cookie{position:fixed;left:16px;right:16px;bottom:16px;z-index:9999;display:flex;justify-content:center;pointer-events:none}
.tb-cookie[hidden]{display:none}
.tb-cookie-in{pointer-events:auto;max-width:760px;width:100%;background:#fff;color:var(--tb-ink);border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.25);padding:18px 20px;border-top:4px solid var(--tb-red)}
.tb-cookie-h{font-weight:800;font-size:18px;margin:0 0 6px}
.tb-cookie-in p{margin:0 0 12px;font-size:15px;line-height:1.5}
.tb-cookie-in a{color:var(--tb-red-text);font-weight:700}
.tb-cookie-opts{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 12px;font-size:15px}
.tb-cookie-opts[hidden]{display:none}
.tb-cookie-opts input{width:18px;height:18px;vertical-align:-3px;margin-right:6px}
.tb-cookie-btns{display:flex;flex-wrap:wrap;gap:8px}
.tb-cookie-btn{flex:1 1 170px;border:2px solid #1a1a1a;background:#1a1a1a;color:#fff;border-radius:999px;padding:10px 16px;font:inherit;font-weight:700;font-size:15px;cursor:pointer}
.tb-cookie-btn.tb-cookie-link{background:transparent;border-color:transparent;color:#1a1a1a;text-decoration:underline;flex:0 1 auto}
.tb-cookie-btn[hidden]{display:none}

/* Local currency guide + overseas note */
.tb-fx{display:block;font-size:13px;font-weight:600;color:var(--tb-mute);margin-top:2px}
.tb-fx-pick{background:#111;color:#cfcfcf;font-size:13px;padding:10px 16px;text-align:center}
.tb-fx-pick label{font-weight:700;color:#fff}
.tb-fx-pick select{font:inherit;font-size:13px;padding:3px 6px;border-radius:6px;margin:0 8px}
.tb-intl-note{background:#fff6d6;border:1px solid #efd27a;border-radius:10px;padding:12px 14px;margin:0 0 16px;font-size:14px;line-height:1.5}

/* Thank-you: create account box */
.tb-acc{background:#fff6d6;border:2px solid #efd27a;border-radius:16px;padding:20px 22px;margin:0 0 22px}
.tb-acc h2{margin:0 0 10px;font-size:24px}
.tb-acc-list{margin:0 0 14px;padding-left:20px;line-height:1.7}
.tb-acc-pw label{display:block;font-weight:700;margin-bottom:6px}
.tb-acc-pw input{width:100%;max-width:380px;padding:10px 12px;border:1px solid #bdbdb8;border-radius:10px;font:inherit}
.tb-acc-opt label{font-size:15px}
.tb-acc-opt input{width:18px;height:18px;vertical-align:-3px;margin-right:6px}
.tb-acc-err{color:var(--tb-red-text);font-weight:700}

/* Delivery estimates on basket + checkout, same look as the product page */
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__description,.tb-est-line{color:#1d7a3a!important;font-weight:700!important;font-size:15px!important;line-height:1.35}
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__description{margin-top:3px}
.tb-est-line{margin:2px 0 6px;text-align:left}
.wp-block-woocommerce-checkout .tb-est-line{padding:0 16px}

/* Express strip: Google Pay / Apple Pay only (PayPal stays in the payment list under cards) */
#express-payment-method-ppcp-gateway-paypal{display:none!important}
.wc-block-components-express-payment__event-buttons{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important}

/* Product page: keep everything off the white card's edges, lined up with the section headings (25px) */
.single-product div.product>.woocommerce-product-gallery{padding-left:25px;box-sizing:border-box}
.single-product div.product>.summary{padding-right:25px;box-sizing:border-box}
.single-product div.product>section.up-sells,.single-product div.product>section.related{padding-left:25px;padding-right:25px;box-sizing:border-box}
/* Add to basket and Buy now: same height and same width */
.single-product form.cart{display:grid!important;grid-template-columns:76px 1fr;column-gap:10px;row-gap:10px;align-items:stretch}
.single-product form.cart .quantity{grid-column:1;grid-row:1;margin:0!important;width:76px}
.single-product form.cart .quantity input.qty{width:100%!important;height:52px!important;min-height:52px}
.single-product form.cart .single_add_to_cart_button{grid-column:2;grid-row:1;width:100%!important;height:52px!important;min-height:52px;margin:0!important;font-size:17px!important}
.single-product form.cart .tb-buynow{grid-column:2;grid-row:2;width:100%!important;height:52px!important;min-height:52px;margin:0!important;font-size:17px!important;justify-content:center;border-radius:999px}
@media(max-width:767px){.single-product div.product>.woocommerce-product-gallery{padding-left:0}.single-product div.product>.summary{padding-right:0}.single-product div.product>section.up-sells,.single-product div.product>section.related{padding-left:0;padding-right:0}}

.tb-psec-reviews .woocommerce-Reviews-title{display:none}
.tb-psec-reviews .woocommerce-noreviews{margin-bottom:6px}
.tb-psec-reviews .woocommerce-verification-required{color:#555;font-size:14px}

/* Departments: 9 tiles = clean 3 x 3 (no lonely last tile) */
.tb-dept-grid{grid-template-columns:repeat(3,1fr)!important}
@media(min-width:900px){.tb-dept{flex-direction:row!important;align-items:center}.tb-dept-img{flex:0 0 140px;width:140px;height:120px!important}.tb-dept-name{flex:1;font-size:19px}}
@media(max-width:899px){.tb-dept-grid{gap:8px!important}.tb-dept-img{height:88px!important}.tb-dept-img img{padding:6px!important}.tb-dept-name{font-size:13px!important;line-height:1.25;padding:8px 6px 10px!important;justify-content:center!important;text-align:center}.tb-dept-name b{display:none}}

/* Show the main product photo straight away (no fade-in), better for speed scores */
.woocommerce-product-gallery{opacity:1!important;transition:none!important}

.tb-deliv .tb-deliv-o:last-child:nth-child(odd){grid-column:1/-1}

.tb-404-more{padding-top:8px;padding-bottom:28px}.tb-404-more h2{margin:18px 0 14px}

.tb-hide-express{display:none!important}

[data-tb-link]{cursor:pointer}
.wc-block-components-order-summary-item .wc-block-components-product-name[data-tb-link]:hover,.wc-block-components-order-summary-item .wc-block-components-product-name[data-tb-link]:focus-visible{text-decoration:underline;color:var(--tb-red-text)}

.tb-pay-locked .wp-block-woocommerce-checkout-payment-block .wc-block-components-notice-banner,.tb-pay-locked .wp-block-woocommerce-checkout-payment-block .wc-block-checkout__no-payment-methods-notice{display:none!important}
.tb-pay-lock-msg{margin:6px 0 0;padding:12px 14px;border-left:4px solid var(--tb-red);background:#fff5f5;color:#222;font-weight:600;border-radius:6px}
.tb-pay-locked .wc-block-components-checkout-place-order-button{opacity:.45;cursor:not-allowed;pointer-events:none}

/* Quick pay strip: smaller and lighter, so the card form stays the main way to pay */
.wc-block-components-express-payment--checkout,.wc-block-components-express-payment--cart{border:0!important;padding:0!important;margin-bottom:6px!important}
.wc-block-components-express-payment--checkout .wc-block-components-express-payment__title-container{display:none!important}
.wc-block-components-express-payment__event-buttons{max-width:380px;margin:0 auto!important}
.wc-block-components-express-payment__event-buttons button,.wc-block-components-express-payment__event-buttons .gpay-card-info-container,.wc-block-components-express-payment__event-buttons apple-pay-button{height:42px!important;min-height:42px!important}
.wc-block-components-express-payment-continue-rule--checkout{margin-top:6px!important}

.tb-acc-hint{margin:4px 0 0 28px;font-size:14px;color:#1d7a3a;font-weight:600}
.tb-acc-note{margin:6px 0 12px;font-size:15px}

/* Step cards, worked example and Q&A (loyalty + FAQ pages) */
.tb-steps,ol.tb-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:8px 0 24px!important;padding:0!important;list-style:none;counter-reset:tbstep}
.tb-steps li{position:relative;background:var(--tb-soft2);border:1px solid var(--tb-line);border-radius:var(--tb-radius);padding:20px 18px 18px;margin:0;counter-increment:tbstep}
.tb-steps li::before{content:counter(tbstep);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--tb-red);color:#fff;font:700 20px/1 var(--tb-cond);margin-bottom:12px}
.tb-steps li strong{display:block;font:700 20px/1.2 var(--tb-cond);color:var(--tb-ink);margin-bottom:6px}
.tb-steps li span{display:block;color:var(--tb-ink2);font-size:15px;line-height:1.5}
.tb-example{background:#fff;border:2px dashed var(--tb-red);border-radius:var(--tb-radius);padding:16px 18px;margin:0 0 24px}
.tb-example p{margin:0 0 6px}.tb-example p:last-child{margin:0}
.tb-example .tb-ex-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:600}
.tb-example .tb-ex-row b{background:var(--tb-soft);border-radius:999px;padding:6px 12px;font-weight:700}
.tb-example .tb-ex-row i{font-style:normal;color:var(--tb-mute)}
.tb-qa{margin:0 0 24px}
.tb-qa details{border:1px solid var(--tb-line);border-radius:12px;margin:0 0 8px;background:#fff}
.tb-qa summary{cursor:pointer;padding:14px 44px 14px 16px;font-weight:700;color:var(--tb-ink);list-style:none;position:relative}
.tb-qa summary::-webkit-details-marker{display:none}
.tb-qa summary::after{content:'+';position:absolute;right:16px;top:50%;transform:translateY(-50%);font:700 22px/1 var(--tb-cond);color:var(--tb-red)}
.tb-qa details[open] summary::after{content:'\2212'}
.tb-qa details>div{padding:0 16px 14px;color:var(--tb-ink2);line-height:1.6}
.tb-qa details>div p{margin:0 0 8px}.tb-qa details>div p:last-child{margin:0}
.tb-qa h2{margin-top:28px}
@media (max-width:760px){.tb-steps,ol.tb-steps{grid-template-columns:1fr}}

/* Product page: delivery & returns as a tidy list */
.tb-psec-deliv .tb-dl-h{font-size:1.05rem;margin:4px 0 10px}
.tb-psec-deliv .tb-dl-h:not(:first-child){margin-top:22px}
.tb-dl{list-style:none;margin:0 !important;padding:0 !important;border:1px solid #e6e6e6;border-radius:12px;overflow:hidden;background:#fff}
.tb-dl li{display:grid;grid-template-columns:40px 1fr auto;gap:14px;align-items:center;padding:12px 16px;margin:0;border-top:1px solid #eee}
.tb-dl li:first-child{border-top:0}
.tb-dl-ic{width:40px;height:40px;border-radius:50%;background:#fdeaea;color:#e30000;display:flex;align-items:center;justify-content:center}
.tb-dl-ic .tb-i{width:21px;height:21px}
.tb-dl-txt b{display:block;font-weight:700;color:#111;line-height:1.3}
.tb-dl-txt small{display:block;color:#666;font-size:.88rem;line-height:1.35;margin-top:2px}
.tb-dl-pr{font-weight:800;white-space:nowrap;color:#111}
.tb-dl-free{color:#e30000;letter-spacing:.02em}
.tb-dl-when{display:flex;gap:8px;align-items:center;margin:12px 0 0;color:#333}
.tb-dl-when .tb-i{width:18px;height:18px;color:#e30000;flex:0 0 auto}
.tb-dl-more{margin:12px 0 0;font-size:.92rem}
@media (max-width:600px){.tb-dl li{grid-template-columns:34px 1fr auto;gap:10px;padding:11px 12px}.tb-dl-ic{width:34px;height:34px}.tb-dl-ic .tb-i{width:18px;height:18px}}
.tb-footer-legal .tb-copy{margin-top:6px;opacity:.85}

/* Compact product page (Kevin, 1 Nov): less scrolling */
.tb-sections{margin-top:20px !important;margin-bottom:20px !important;gap:12px !important}
.tb-psec{padding:18px 22px}
.tb-psec h2{font-size:24px;margin:0 0 10px}
.tb-spec-grid table,.tb-spec-grid tbody{display:contents}
.tb-spec-grid{display:grid;grid-template-columns:1fr;border-top:1px solid #eee}
.tb-spec-grid tr{display:grid;grid-template-columns:38% 62%;border-bottom:1px solid #eee}
.tb-psec .tb-spec-grid th,.tb-psec .tb-spec-grid td,.tb-psec .tb-spec-grid .woocommerce-product-attributes th,.tb-psec .tb-spec-grid .woocommerce-product-attributes td{padding:7px 12px !important;vertical-align:middle !important;line-height:1.35 !important;font-size:.95rem;border:0 !important;width:auto !important;display:flex;align-items:center}
.tb-spec-grid th{background:#f6f5f2}
.tb-spec-grid td p{margin:0 !important;padding:0 !important}
@media (min-width:900px){.tb-spec-grid{grid-template-columns:1fr 1fr;column-gap:24px}}
.tb-dl-cols{display:grid;grid-template-columns:1fr;gap:4px 24px}
@media (min-width:1000px){.tb-dl-cols{grid-template-columns:3fr 2fr}.tb-dl-cols .tb-dl-h:not(:first-child){margin-top:4px}.tb-dl-col .tb-dl-h{margin-top:4px !important}}
.tb-dl li{padding:9px 14px;gap:12px;grid-template-columns:34px 1fr auto}
.tb-dl-ic{width:34px;height:34px}.tb-dl-ic .tb-i{width:18px;height:18px}
.tb-dl-txt small{font-size:.85rem}
.tb-dl-when,.tb-dl-more{margin-top:8px}

@media (max-width:700px){
.tb-psec{padding:16px 14px}
.tb-psec h2{font-size:21px}
.tb-dl li{padding:9px 10px;gap:10px;grid-template-columns:32px 1fr auto}
.tb-dl-ic{width:32px;height:32px}
.tb-dl-txt b{font-size:.95rem}
.tb-dl-txt small{font-size:.8rem}
.tb-dl-pr{font-size:.95rem}
.tb-spec-grid th,.tb-spec-grid td{font-size:.9rem}
}
/* Mobile: long descriptions start folded, with a clear "Read more" */
.tb-psec-body.tb-fold{max-height:340px;overflow:hidden;position:relative}
.tb-psec-body.tb-fold::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(rgba(255,255,255,0),#fff)}
.tb-more{display:block;width:100%;margin:10px 0 0;padding:11px 14px;border:1px solid #111;border-radius:999px;background:#fff;color:#111;font-weight:700;font-size:.95rem;cursor:pointer}

/* Homepage hero: photo links to the featured product, with a name/price strip */
a.tb-hero-img{position:relative;text-decoration:none;color:#111;overflow:hidden}
a.tb-hero-img img{transition:transform .25s ease}
a.tb-hero-img:hover img{transform:scale(1.03)}
.tb-hero-cap{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.96);border:1px solid #e6e6e6;border-radius:12px;padding:9px 12px;box-shadow:0 3px 12px rgba(0,0,0,.10)}
.tb-hero-cap b{flex:1;min-width:0;font-weight:700;font-size:.92rem;line-height:1.25;color:#111}
.tb-hero-pr{font-weight:800;color:#111;white-space:nowrap}
.tb-hero-pr .woocommerce-price-suffix{display:none}
.tb-hero-cap em{font-style:normal;font-weight:800;color:#e30000;white-space:nowrap}

/* Trade accounts: benefits as a two-column tick list */
ul.tb-trade-offer{list-style:none !important;margin:18px 0 22px !important;padding:0 !important;display:grid;grid-template-columns:1fr;gap:10px 28px}
@media (min-width:800px){ul.tb-trade-offer{grid-template-columns:1fr 1fr}}
ul.tb-trade-offer li{position:relative;margin:0;padding:0 0 0 32px;line-height:1.45;color:#333}
ul.tb-trade-offer li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#e30000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat}
ul.tb-trade-offer li strong{color:#111}

.tb-dl li{position:relative}
.tb-dl-stretch{color:inherit !important;text-decoration:none !important}
.tb-dl-stretch::after{content:"";position:absolute;inset:0}
.tb-dl li.tb-dl-link:hover{background:#faf7f7}
.tb-dl li.tb-dl-link:hover .tb-dl-stretch{text-decoration:underline !important}
.tb-dl li.tb-dl-link .tb-dl-pr{color:#e30000}
.tb-dl li.tb-dl-link .tb-dl-pr .tb-i{width:20px;height:20px;display:block}

.tb-spec-grid tr.tb-spec-hide{display:none !important}
.tb-spec-more{max-width:320px;margin-top:12px}
.tb-spec-grid td{word-break:break-word}

/* Review fixes 1 Nov */
.tb-hero .tb-hero-copy h1.tb-hero-h1{margin:0 0 4px!important;font-family:inherit!important;font-size:18px!important;line-height:1.35!important;font-weight:700!important;color:#fff!important;letter-spacing:.01em;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.18)}
.tb-hero-copy h2.tb-hero-title{margin:0;font:700 54px/1 var(--tb-cond);color:#fff!important}
@media (max-width:900px){.tb-hero-copy h2.tb-hero-title{font-size:38px}}
.single-product form.cart .quantity input.qty{border:2px solid #222!important;border-radius:8px!important;min-height:48px;width:74px!important;font-weight:700;font-size:17px;text-align:center;background:#fff}
.single-product form.cart .quantity::before{content:"Qty";display:block;font-size:13px;font-weight:700;color:#333;margin:0 0 4px}
.woocommerce-breadcrumb{color:#444!important;font-size:14px!important}
.woocommerce-breadcrumb a{color:#222!important}
.woocommerce-price-suffix{color:#444!important}

/* Buy box: delivery estimate first, other services folded */
.summary .tb-est,.tb-buybox .tb-est{font-size:15px!important;font-weight:700!important;margin:0 0 12px!important;padding:10px 12px;border-radius:10px;background:#eef8f0;color:#17602b!important}
.tb-deliv-more{margin:12px 0;border:1px solid #e6e6e6;border-radius:10px;background:#fff}
.tb-deliv-more>summary{cursor:pointer;list-style:none;padding:11px 14px;font-weight:700;display:flex;justify-content:space-between;align-items:center}
.tb-deliv-more>summary::-webkit-details-marker{display:none}
.tb-deliv-more>summary::after{content:"+";font-size:20px;line-height:1;color:#e30000}
.tb-deliv-more[open]>summary::after{content:"\2212"}
.tb-deliv-more .tb-deliv{padding:0 12px 12px;margin:0!important}

.tb-keyspecs{list-style:none!important;margin:6px 0 4px!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.tb-keyspecs li{margin:0;font-size:14px;line-height:1.3;color:#111;font-weight:600}
.tb-keyspecs li span{display:block;font-size:12px;font-weight:500;color:#555;text-transform:none}
.tb-keyspecs-more{margin:4px 0 10px!important;font-size:13px}
.tb-keyspecs-more a{color:#111!important;text-decoration:underline}

/* Product gallery: bigger thumbnails, clear selected state, enlarge hint */
.woocommerce div.product div.images .flex-control-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px!important}
.woocommerce div.product div.images .flex-control-thumbs li{width:76px!important;margin:0!important;float:none!important}
.woocommerce div.product div.images .flex-control-thumbs li img{border:2px solid #e2e2e2;border-radius:8px;padding:3px;background:#fff;opacity:1!important;box-sizing:border-box}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce div.product div.images .flex-control-thumbs li img:hover{border-color:#e30000}
.woocommerce div.product div.images.woocommerce-product-gallery::after{content:"Click the photo to enlarge";display:block;font-size:13px;color:#555;margin-top:8px}

.tb-card-sku{display:block;font-size:12px;color:#555;margin:2px 0 4px;letter-spacing:.02em}

.tb-dept-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.tb-dept-eg{font-size:12.5px;font-weight:400;color:#555;line-height:1.3;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tb-dept-name{min-width:0}
.tb-dept-txt{flex:1 1 auto}
.tb-dept-name>b{flex:0 0 auto;margin-left:8px}

/* Phones: hero caption smaller, bigger tap targets in footer */
@media (max-width:700px){
.tb-hero-cap{left:10px;right:10px;bottom:10px;padding:7px 10px;gap:8px}
.tb-hero-cap b{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-footer-cols a{display:inline-block;padding:9px 0;min-height:24px}
}

@media (max-width:700px){
.woocommerce div.product div.images.woocommerce-product-gallery::after{content:"Tap the photo to enlarge"}
}

/* Phones: category intro clamped to 3 lines, sub-category pills in one swipeable row */
@media (max-width:700px){
.product-archive-hero-section .archive-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15px}
nav.tb-subcats{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:6px!important;margin-right:-16px}
nav.tb-subcats::-webkit-scrollbar{display:none}
nav.tb-subcats>a{flex:0 0 auto;white-space:nowrap}
}

/* Phones: basket shows the totals straight after the items; suggestions move below (cart totals before suggestions) */
@media (max-width:700px){
.wc-block-cart .wc-block-components-sidebar-layout{display:flex!important;flex-direction:column}
.wc-block-cart .wc-block-cart__main{display:contents!important}
.wc-block-cart .wc-block-cart__main>.wc-block-cart-items{order:1}
.wc-block-cart .wc-block-cart__sidebar{order:2;width:100%!important}
.wc-block-cart .wc-block-cart__main>.wp-block-woocommerce-product-collection{order:3;margin-top:24px}
}

.summary .stock+.tb-est,.summary p.stock~.tb-est{margin:6px 0 12px!important}
.tb-pmeta{display:inline-block;font-size:15px;line-height:1.5;color:#444;margin:16px 0 0;padding:8px 14px;background:#f5f5f3;border:1px solid #e2e2de;border-radius:8px}
.tb-pmeta strong{color:#111;font-weight:700;letter-spacing:.02em}

/* Quantity: permanent - / + buttons */
.single-product form.cart{grid-template-columns:auto 1fr!important}
.single-product form.cart .quantity.tb-qty{display:grid!important;grid-template-columns:40px 50px 40px;align-items:stretch;width:auto!important}
.single-product form.cart .quantity.tb-qty::before{grid-column:1/-1}
.single-product form.cart .quantity.tb-qty input.qty{width:52px!important;border-radius:0!important;border-left:0!important;border-right:0!important;-moz-appearance:textfield}
.single-product form.cart .quantity.tb-qty input.qty::-webkit-outer-spin-button,.single-product form.cart .quantity.tb-qty input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tb-qbtn{width:40px;min-height:48px;border:2px solid #222;background:#fff;color:#111;font-size:22px;font-weight:700;line-height:1;cursor:pointer;padding:0}
.tb-qbtn:first-of-type{border-radius:8px 0 0 8px}
.tb-qbtn:last-of-type{border-radius:0 8px 8px 0}
.tb-qbtn:hover{background:#f3f3f3}

/* Department menu: fits on one line at laptop widths after the rename (nav fits after rename) */
@media (min-width:1025px) and (max-width:1440px){
.tb-nav>ul,.tb-nav ul:first-child{gap:0 7px!important}
.tb-nav li.tb-mi>a{font-size:13px!important;letter-spacing:-.005em}
}

/* Category filters (TB_Filters) */
.tb-flt{background:#fff;border:1px solid #e2e2e2;border-radius:8px;font-size:15px;color:#161616}
.tb-flt-head{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #e2e2e2}
.tb-flt-head h2{margin:0 auto 0 0;font-size:18px;font-weight:800;line-height:1.2}
.tb-flt-clear{font-size:14px;font-weight:600;color:#b30000;text-decoration:underline}
.tb-flt-x{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin:-8px -8px -8px 0;background:none;border:0;color:#161616;cursor:pointer;padding:0}
.tb-flt-g{border-bottom:1px solid #e2e2e2;padding:0 14px}
.tb-flt-g:last-child{border-bottom:0}
.tb-flt-g>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:46px;font-weight:800;font-size:15px;cursor:pointer}
.tb-flt-g>summary::-webkit-details-marker{display:none}
.tb-flt-g>summary::after{content:"";width:8px;height:8px;border-right:2px solid #161616;border-bottom:2px solid #161616;transform:rotate(45deg);margin:-5px 4px 0 0}
.tb-flt-g[open]>summary::after{transform:rotate(-135deg);margin-top:5px}
.tb-flt-opts{padding:0 0 10px}
.tb-flt label{display:flex;align-items:center;gap:10px;min-height:34px;cursor:pointer;line-height:1.25;margin:0;font-weight:400}
.tb-flt input[type=checkbox]{width:18px;height:18px;accent-color:#e30000;flex:none;margin:0}
.tb-flt .tb-flt-n{margin-left:auto;padding-left:8px;color:#595959;font-size:13px}
.tb-flt-more>summary{cursor:pointer;color:#b30000;font-weight:600;font-size:14px;min-height:34px;display:flex;align-items:center;list-style:none}
.tb-flt-more>summary::-webkit-details-marker{display:none}
.tb-flt-more[open]>summary{display:none}
.tb-flt-g[data-g=size] .tb-flt-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:6px}
.tb-flt-g[data-g=size] label{gap:6px;font-size:14px}
.tb-flt-g[data-g=size] .tb-flt-n{display:none}
.tb-flt-foot{display:none}
.tb-flt-apply{width:100%;min-height:50px;border:0;border-radius:8px;background:#e30000;color:#fff;font-size:17px;font-weight:800;cursor:pointer}
.tb-flt-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px}
.tb-flt-bar:empty{display:none}
.tb-flt-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;background:#161616;color:#fff!important;font-size:14px;font-weight:600;text-decoration:none!important}
.tb-flt-chip:hover{background:#e30000}
.tb-flt-open{display:none;align-items:center;gap:8px;min-height:46px;padding:0 18px;border:0;border-radius:6px;background:#161616;color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.tb-flt-shade{display:none}
.tb-flt-none{padding:16px;background:#fff;border:1px solid #e2e2e2;border-radius:8px}
@media (min-width:1025px){
.tb-flt-wrap{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}
.tb-flt-main .products.grid-lg-col-4{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1300px){.tb-flt-main .products.grid-lg-col-4{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1024px){
.tb-flt-open{display:inline-flex}
.tb-flt-bar{position:sticky;top:0;z-index:20;background:#f7f7f7;padding:8px 0}
.tb-flt{position:fixed;left:0;right:0;bottom:0;z-index:100001;max-height:88vh;display:flex;flex-direction:column;border-radius:14px 14px 0 0;border:0;transform:translateY(100%);visibility:hidden;transition:transform .25s ease,visibility 0s .25s}
.tb-flt.is-open{transform:none;visibility:visible;transition:transform .25s ease}
.tb-flt-form{display:flex;flex-direction:column;min-height:0;max-height:88vh}
.tb-flt-body{overflow-y:auto;flex:1 1 auto;overscroll-behavior:contain}
.tb-flt-x{display:inline-flex}
.tb-flt label{min-height:44px}
.tb-flt-foot{display:block;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #e2e2e2}
body.tb-flt-lock{overflow:hidden}
body.tb-flt-lock .tb-flt-shade{display:block;position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.55)}
}
@media (prefers-reduced-motion:reduce){.tb-flt,.tb-flt.is-open{transition:none}}

/* Checkout: returning customers (TB_Known) */
.tb-known{margin:8px 0 12px;padding:10px 12px;border:1px solid #f2cccc;background:#fff6f6;border-radius:8px;font-size:14px;line-height:1.45;color:#161616}
.tb-known a{color:#b30000;font-weight:700;text-decoration:underline}
.tb-known-in{margin:0 0 16px;font-size:15px}
.tb-acc-lead{margin:-4px 0 10px;font-weight:600}
/* Points box on basket + checkout (TB_Points_Box) */
.tb-pts{background:#f4faf5;border:1px solid #cfe6d4;border-radius:8px;padding:12px 14px;margin:0 0 18px;font-size:15px;line-height:1.45}.tb-pts p{margin:0 0 6px}.tb-pts p:last-child{margin-bottom:0}.tb-pts .tb-pts-list{margin:0 0 8px 18px;padding:0}.tb-pts .tb-pts-list li{margin:0 0 2px}.tb-pts-on{color:#14753a;font-weight:700}.tb-pts .tb-pts-save{font-size:13px;color:#555;text-decoration:underline}
.tb-pts.tb-pts-mini{padding:8px 12px;font-size:14px;margin:0 0 14px}.tb-pts-mini a{text-decoration:underline}.tb-pts-mini .tb-pts-use{font-weight:700;color:#e00000}
/* Checkout/basket: no product description excerpts in the summary (ChatGPT review 5 Nov 2026) */
.wc-block-components-order-summary-item .wc-block-components-product-metadata__description,.wp-block-woocommerce-checkout .wc-block-components-product-metadata__description,.wc-block-cart .wc-block-components-product-metadata__description{display:none!important}

/* Homepage product rows: 8 products always fill whole rows (Kevin 6 Nov: 5 + 3 looked uneven). 4 across on desktop, 2 across on tablet/phone. */
.home .tb-sec ul.products{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media (max-width:899px){.home .tb-sec ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Express checkout: no half-box once the "Express Checkout" title is hidden (7 Nov 2026). */
.wc-block-components-express-payment--checkout .wc-block-components-express-payment__content { border: 0 !important; padding: 0 !important; }

/* Checkout: order summary and total stay in view while the customer scrolls (desktop) (7 Nov 2026). */
@media (min-width: 1000px) { .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout { align-items: flex-start; } .wp-block-woocommerce-checkout .wc-block-components-sidebar { position: sticky; top: 24px; align-self: flex-start; } .admin-bar .wp-block-woocommerce-checkout .wc-block-components-sidebar { top: 56px; } }

/* Product page on phones: text no longer touches the card edge (Kevin, 7 Nov) */
@media (max-width:767px){.single-product .content-container.site-container{padding-left:8px!important;padding-right:8px!important}.single-product .entry.content-bg.entry-content-wrap{padding:18px 16px 20px!important;border-radius:12px}}

/* Phones: shorter product page (Kevin, 7 Nov) */
@media (max-width:767px){
.tb-mfold>h2{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;margin:0!important;-webkit-tap-highlight-color:transparent}
.tb-mfold>h2::after{content:"+";flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:#fde8e8;color:#e00000;font:700 22px/32px Arial,sans-serif;text-align:center}
.tb-mfold.tb-open>h2::after{content:"\2212"}
.tb-mfold:not(.tb-open)>:not(h2){display:none!important}
.tb-mfold.tb-open>h2{margin-bottom:14px!important}
.tb-psec.tb-mfold{padding-top:16px!important;padding-bottom:16px!important}
.tb-psec-specs table th,.tb-psec-specs table td{padding:8px 10px!important;font-size:14px!important;line-height:1.35}
.tb-psec-specs table th{width:42%}
.single-product .up-sells ul.products,.single-product .related ul.products{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:6px;grid-template-columns:none!important;-webkit-overflow-scrolling:touch}
.single-product .up-sells ul.products li.product,.single-product .related ul.products li.product{flex:0 0 46%!important;width:46%!important;max-width:none!important;margin:0!important;scroll-snap-align:start}
.single-product .up-sells ul.products li.product h2,.single-product .related ul.products li.product h2{font-size:14px!important;line-height:1.3}
.tb-footer-cols>div.tb-mfold{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.15)}
.tb-footer-cols>div.tb-mfold>h2::after{background:rgba(255,255,255,.12);color:#fff}
.tb-footer-cols>div.tb-mfold.tb-open{display:flex;flex-direction:column}
}

/* Info pages: tables in clear boxes, one row per line (Kevin, 8 Nov) */
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations){width:100%;border-collapse:separate!important;border-spacing:0;border:1px solid #dcdcd6!important;border-radius:12px;overflow:hidden;margin:16px 0 28px;font-size:16px;line-height:1.5;background:#fff}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) th{background:#f3f3f0!important;color:#111;text-align:left!important;font-weight:700;padding:12px 16px!important;border:0!important;border-bottom:2px solid #dcdcd6!important}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td{padding:12px 16px!important;border:0!important;border-top:1px solid #e8e8e4!important;vertical-align:top;background:#fff}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tr:first-child td{border-top:0!important}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tbody tr:nth-child(even) td{background:#fafaf8}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td:first-child{font-weight:600;color:#111}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) th+th,.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td+td{border-left:1px solid #ececea!important}
@media (max-width:767px){
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations),.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tbody,.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tr,.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td{display:block;width:100%}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) thead{display:none}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tr{border-top:1px solid #dcdcd6;padding:6px 0}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tr:first-child{border-top:0}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td{border:0!important;padding:6px 16px!important;background:transparent!important}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td+td{border-left:0!important}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) td[data-label]::before{content:attr(data-label);display:block;font-size:13px;font-weight:700;color:#666;text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}
.page .entry-content table:not(.shop_table):not([class*="woocommerce"]):not(.variations) tbody tr:nth-child(even){background:#fafaf8}
}

/* Subcategory tiles (8 Nov 2026) */
.tb-subtiles{margin:0 0 26px;width:100%}
.tb-subtiles-h{font-size:22px;margin:0 0 12px}
.tb-subtiles-h span{font-size:14px;font-weight:600;color:var(--tb-mute,#666);margin-left:6px;font-family:inherit}
.tb-subtiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
a.tb-subtile{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 10px;background:#fff;border:1px solid #d6d6d0;border-radius:14px;text-decoration:none!important;color:var(--tb-ink,#111);box-shadow:0 1px 3px rgba(0,0,0,.07);transition:border-color .15s,box-shadow .15s,transform .15s;min-height:76px}
a.tb-subtile:hover,a.tb-subtile:focus-visible{border-color:#e00000;box-shadow:0 6px 16px rgba(0,0,0,.12);transform:translateY(-2px)}
.tb-subtile-img{flex:0 0 56px;width:56px;height:56px;border-radius:10px;background:#f5f5f3;display:flex;align-items:center;justify-content:center;overflow:hidden}
.tb-subtile-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.tb-subtile-txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.tb-subtile-name{font-weight:700;font-size:15px;line-height:1.25}
.tb-subtile-count{font-size:13px;font-weight:700;color:#c00000}
a.tb-subtile:hover .tb-subtile-name{text-decoration:underline}
.tb-subtiles-all{display:none}
@media (max-width:767px){
.tb-subtiles-grid{grid-template-columns:1fr 1fr;gap:8px}
a.tb-subtile{flex-direction:column;align-items:flex-start;gap:8px;padding:10px;min-height:0}
.tb-subtile-img{width:100%;height:54px;flex:0 0 auto}
.tb-subtile-name{font-size:14px}
.tb-subtiles:not(.tb-subtiles-open) a.tb-subtile-more{display:none}
.tb-subtiles-all{display:block;width:100%;margin-top:10px;padding:12px;border:1px solid #111;border-radius:999px;background:#fff;font-weight:700;font-size:15px;color:#111}
}

/* 8 Nov: keep "Edit" on one line in the checkout address card on phones. */
.wc-block-components-address-card__edit{white-space:nowrap;word-break:normal;flex-shrink:0;}

/* 9 Nov (Kevin): "Buy now" gets its own full-width row so the words never get cut off */
.single-product form.cart .tb-buynow{grid-column:1/-1!important;height:auto!important;min-height:52px;line-height:1.2;white-space:normal;padding:12px 18px!important}
/* 9 Nov (Kevin): product sliders - part of the next card always shows, arrows, clear scroll bar, "swipe" hint */
.tb-sl-wrap{position:relative}
@media (max-width:767px){.single-product .up-sells ul.products li.product,.single-product .related ul.products li.product{flex:0 0 40%!important;width:40%!important}}
.single-product .up-sells ul.products,.single-product .related ul.products{scrollbar-width:thin;scrollbar-color:#8a8a8a #e6e6e6;padding-bottom:12px!important}
.single-product .up-sells ul.products::-webkit-scrollbar,.single-product .related ul.products::-webkit-scrollbar{height:6px}
.single-product .up-sells ul.products::-webkit-scrollbar-track,.single-product .related ul.products::-webkit-scrollbar-track{background:#e6e6e6;border-radius:3px}
.single-product .up-sells ul.products::-webkit-scrollbar-thumb,.single-product .related ul.products::-webkit-scrollbar-thumb{background:#8a8a8a;border-radius:3px}
.tb-sl-btn{position:absolute;top:60px;z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid #ddd;background:#fff;color:#111;font-size:32px;line-height:1;box-shadow:0 2px 10px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0 0 4px}
.tb-sl-btn:hover{background:#f2f2f2}
.tb-sl-btn:focus-visible{outline:3px solid #f5b400;outline-offset:2px}
.tb-sl-prev{left:2px}.tb-sl-next{right:2px}
.tb-sl-btn[hidden]{display:none}
.tb-sl-hint{margin:-8px 0 12px;font-size:15px;color:#555}
.tb-sl-hint[hidden]{display:none}
.single-product .up-sells ul.products li.product .product-action-wrap,.single-product .related ul.products li.product .product-action-wrap{display:block!important;width:100%!important}
.single-product .up-sells ul.products li.product a.button,.single-product .related ul.products li.product a.button{display:flex!important;align-items:center;justify-content:center;width:100%!important;box-sizing:border-box;min-height:44px;height:auto!important;padding:8px 12px!important;white-space:normal;line-height:1.15;text-align:center;font-size:13px!important}
/* 9 Nov (Kevin): mobile search screen - popular searches and categories while the box is empty */
.tb-se{padding:14px 16px 24px;background:#fff;overflow-y:auto;max-height:calc(100vh - 64px);box-sizing:border-box}
.tb-se[hidden]{display:none}
.tb-se-h{font-weight:700;font-size:16px;margin:6px 0 10px;color:#111}
.tb-se-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.tb-se-chip{display:inline-block;padding:9px 14px;border:1px solid #cfcfcf;border-radius:999px;color:#111!important;text-decoration:none!important;font-size:15px;background:#f5f5f5}
.tb-se-chip:hover,.tb-se-chip:focus{background:#e9e9e9}
.tb-se-cats{list-style:none!important;margin:0 0 14px!important;padding:0!important}
.tb-se-cats li{margin:0!important}
.tb-se-cats li a{display:flex;justify-content:space-between;align-items:center;padding:13px 4px;border-bottom:1px solid #eee;color:#111!important;text-decoration:none!important;font-size:16px}
.tb-se-cats li a::after{content:"\203A";color:#999;font-size:22px;line-height:1}
.tb-se-tip{font-size:14px;color:#555;margin:0}

/* 9 Nov QA (phone/tablet/PC check): no text under 12px on phones (Google legibility), 404 search button fits */
.tb .woocommerce-price-suffix{font-size:12px!important}
.tb .tb-ic{font-size:12px!important}
.tb .tb-sticky-price small,.tb .tb-sticky-price .woocommerce-price-suffix,.tb .tb-sticky-price span{font-size:12px!important}
.error404 .search-form .search-submit,.search-no-results .search-form .search-submit{width:auto!important;min-width:96px;padding:8px 16px!important;white-space:nowrap}
.tb .tb-ic span{font-size:12px!important}
/* product gallery thumbnails: never squash the photo */
.single-product .flex-control-thumbs li img{object-fit:contain!important;background:#fff}
.error404 .search-form .search-field,.search-no-results .search-form .search-field{padding-right:112px!important}

/* === 10 Nov final check === */
/* Cookie banner: compact on phones */
@media(max-width:600px){
 .tb-cookie{left:8px;right:8px;bottom:8px}
 .tb-cookie-in{padding:12px 14px;border-radius:14px;max-height:calc(100vh - 24px);overflow:auto}
 .tb-cookie-h{font-size:16px;margin:0 0 4px}
 .tb-cookie-in p{font-size:13px;line-height:1.4;margin:0 0 10px}
 .tb-cookie-opts{font-size:14px;gap:6px 16px;margin:0 0 10px}
 .tb-cookie-opts label{min-height:32px;display:inline-flex;align-items:center}
 .tb-cookie-btns{gap:6px 8px}
 .tb-cookie-btn{flex:1 1 0;min-width:0;padding:8px 8px;font-size:14px;line-height:1.15;min-height:44px}
 .tb-cookie-btn.tb-cookie-link{flex:1 1 100%;min-height:36px;padding:6px 8px}
}
/* Small phones (320px): Add to basket text and header row */
@media(max-width:359px){
 .single-product form.cart{grid-template-columns:64px 1fr;column-gap:8px}
 .single-product form.cart .quantity{width:64px}
 .single-product form.cart .single_add_to_cart_button{font-size:16px!important;padding:0 8px!important;white-space:nowrap}
 .tb-logo-img,#masthead .tb-logo-img{height:26px!important}
 .tb-logo{padding:9px 0}
 .tb-header-row{gap:10px 6px}
 .tb-icons{gap:4px}
}
/* Basket on phones: keep line totals inside the page */
@media(max-width:767px){
 .wc-block-cart table.wc-block-cart-items{width:100%!important;max-width:100%;table-layout:fixed}
 .wc-block-cart .wc-block-cart-items .wc-block-cart-items__row{grid-template-columns:80px minmax(0,1fr) auto!important}
 .wc-block-cart .wc-block-cart-item__total{padding-left:8px!important}
}
/* Touch screens: bigger basket taps */
@media(pointer:coarse){
 .wc-block-cart .wc-block-components-quantity-selector{min-height:40px}
 .wc-block-cart .wc-block-components-quantity-selector__button{min-width:40px!important;min-height:40px}
 .wc-block-cart .wc-block-cart-item__remove-link{min-width:44px;min-height:44px;display:inline-flex!important;align-items:center;justify-content:center}
}
/* Empty basket: "New in" as product cards */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0!important;padding:0!important;list-style:none}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{width:auto!important;max-width:none!important;flex:none!important;float:none!important;margin:0!important;padding:12px!important;border:1px solid #e5e5e5!important;border-radius:12px;background:#fff;text-align:left!important;display:flex;flex-direction:column}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product img{width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:contain}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{font-size:15px!important;line-height:1.3!important;font-weight:700!important;color:var(--tb-ink)!important;margin:8px 0 6px!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{font-size:17px!important;font-weight:800;color:var(--tb-ink);margin:auto 0 8px!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{margin:0!important;padding:0!important;width:100%!important;max-width:none!important;display:block!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a{display:flex!important;width:100%!important;box-sizing:border-box;justify-content:center;align-items:center;min-height:40px;margin:0!important;max-width:none!important;padding:8px 2px!important;font-size:13px!important;font-weight:800!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important;word-break:normal!important;border-radius:999px!important;background:var(--tb-red)!important;color:#fff!important;text-decoration:none!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a svg,.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a .kadence-svg-iconset{display:none!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product .product-details{padding:0!important;margin:0!important;display:flex;flex-direction:column;flex:1}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{word-break:normal!important;overflow-wrap:break-word!important;hyphens:none!important}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price small{display:block;font-size:12px;font-weight:400;color:#555}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{opacity:1!important;visibility:visible!important;position:static!important;transform:none!important;height:auto!important}
.wp-block-woocommerce-empty-cart-block .wp-block-separator{display:none}
@media(max-width:767px){.wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product{padding:10px!important}.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{font-size:14px!important}}
/* Touch screens: 16px form controls stop iPhone zoom; bigger taps */
@media(pointer:coarse){
 .tb-fx-pick select{font-size:16px;padding:6px 26px 6px 8px;min-height:36px}
 .woocommerce-ordering select.orderby{font-size:16px!important;min-height:44px}
 .tb-usps a{min-height:32px}
 .tb-trust-list a{padding:8px 0}
}
/* Trust list: text and link stay on one flowing line */
.tb-trust-list li{display:block;position:relative;padding-left:28px}
.tb-trust-list li>.tb-i{position:absolute;left:0;top:2px}
/* Sliders on phones 390px and wider: "Add to basket" on one line (narrower phones keep the two-line wrap) */
@media(min-width:390px) and (max-width:767px){
 section.related li.product a.button,section.up-sells li.product a.button{padding:8px 4px!important;white-space:nowrap!important}
}
/* Search box hint fits on phones */
@media(max-width:480px){.tb-search .dgwt-wcas-search-input::placeholder{font-size:14px}}
.tb-search .dgwt-wcas-search-input{text-overflow:ellipsis}
/* Checkout: only show card logos UK shoppers use */
.wc-block-components-payment-method-icon--discover,.wc-block-components-payment-method-icon--jcb,.wc-block-components-payment-method-icon--elo,.wc-block-components-payment-method-icon--hiper,.wc-block-components-payment-method-icon--diners,.wc-block-components-payment-method-icon--unionpay{display:none!important}
#payment-method .wc-block-components-payment-method-icons,.wc-block-components-payment-method-icons{flex-wrap:nowrap!important;flex:none}
@media(max-width:359px){.wc-block-cart .wc-block-components-quantity-selector__button{min-width:34px!important}.wc-block-cart .wc-block-cart-item__remove-link{min-width:36px}}
/* (12 Nov 2026: the old basket-reminder note under the email box has gone; see the rule below.) */
/* Track order: hide the duplicate stock instructions */
.woocommerce-form-track-order>p:first-of-type{display:none}
/* Department menu between 901 and 1239px wide: two tidy rows of five (was ragged, "Trade" cut off at 1200-1239) */
@media (min-width:901px) and (max-width:1239px){
 .tb-nav .tb-menu{display:grid!important;grid-template-columns:repeat(5,auto)!important;justify-content:space-between!important;gap:0 14px!important}
 .tb-nav .tb-menu>li>a{padding:9px 0;font-size:13px!important}
}
/* Header between 901 and 1000px: keep the icons beside the search box */
@media (min-width:901px) and (max-width:1000px){.tb-header-row{flex-wrap:nowrap}.tb-search{flex:1 1 200px}.tb-icons{gap:12px;flex:none}}
/* Touch screens: taller tap areas for small links; readable guide labels */
@media(pointer:coarse){
 .tb-usp-link{min-height:40px;display:inline-flex!important;align-items:center;gap:5px}
 .tb-sec-head>a{display:inline-flex;align-items:center;min-height:40px;padding:0 4px}
 a[href*="ebay.co.uk/usr/tool-buyer"]{display:inline-block;padding:9px 0}
 .tb-trust-list a[href*="ebay.co.uk/usr/tool-buyer"]{display:inline;padding:8px 0}
}
a.category-link-buying-guides,.entry-taxonomies a,.loop-entry .entry-taxonomies a{font-size:12px!important}
.tb-dash-label{color:#5f5f5f!important}
/* Checkout (12 Nov 2026): the two opt-out boxes under the email box. Same size as the other checkout boxes, with clear space between them (WCAG 2.2 target spacing). */
.wc-block-checkout .wc-block-components-address-form__toolbuyer-no-marketing{margin-top:14px!important}
.woocommerce .show-password-input,.show-password-input{min-width:28px;min-height:28px;display:inline-flex!important;align-items:center;justify-content:center}
/* 10 Nov: slider card names with long part sizes (e.g. 64x93mm/35mm) wrap inside the card on phones */
@media(max-width:767px){.single-product .related li.product .woocommerce-loop-product__title,.single-product .up-sells li.product .woocommerce-loop-product__title,.single-product .related li.product .woocommerce-loop-product__title a,.single-product .up-sells li.product .woocommerce-loop-product__title a{overflow-wrap:anywhere}}
/* 11 Nov 2026 (v2): the Actions buttons on the order page (Change address, Request to cancel, Invoice). Same width, one line each, a clear gap; on phones the row stacks so the buttons run full width under the word Actions. */
.woocommerce-order-details .order-actions-button,.woocommerce-table--order-details td>a.button{display:block;box-sizing:border-box;width:100%;max-width:280px;margin:0 0 10px 0;padding:12px 18px;text-align:center;white-space:nowrap;line-height:1.25;font-size:16px}
.woocommerce-order-details .order-actions-button:last-child,.woocommerce-table--order-details td>a.button:last-child{margin-bottom:0}
@media (max-width:600px){.woocommerce-table--order-details tr:has(.order-actions-button)>th,.woocommerce-table--order-details tr:has(.order-actions-button)>td{display:block;width:100%;box-sizing:border-box}.woocommerce-table--order-details tr:has(.order-actions-button)>th{padding-bottom:4px;border-bottom:0}.woocommerce-table--order-details tr:has(.order-actions-button)>td{padding-top:6px}.woocommerce-order-details .order-actions-button,.woocommerce-table--order-details td>a.button{max-width:none}}

/* === 12 Nov 2026: speed === */
/* Product page: for a split second while the photo slider starts, the photo area was too tall, so the small photos underneath jumped up the page (a layout shift, worst on phones). Keep the photo area square until the slider sets its own height. */
.woocommerce div.product div.images .flex-viewport{aspect-ratio:1/1}
